Joomla 5.0.1 a 4.4.1 bezpečnostní vydání (29 lis 2023)
Joomla 5.0.1 a 4.4.1 je nyní k dispozici. Jedná se o bezpečnostní vydání pro Joomla 4.x. a 5.x.
Vyřešeno Kde mám chybu?
04. lis 2015 11:55 #124331
Odpověď od Ernst
Joomla Expert
když dám do modulu jen ten příklad
tak se mi taky nic nezobrazí
Code:
<script type="text/javascript">
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.html", function() {
alert('Načteno');
});
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js",
function(response, status, xhr) {
// status - v případě, že nastane chyba, bude mít hodnotu "error"
// xhr - informace o chybě
if(status == "error")
// když nastala chyba
{
alert("Nastala chyba číslo: "+xhr.status+" - "+xhr.statusText);
// xhr.status - číslo chyby
// xhr.statusText - textový popis chyby, třeba error
// Not Found - nenalezeno, Acces denied - přístup odepřen apod.
} else {
alert('Načteno');}
});
</script>
04. lis 2015 12:07 #124332
Odpověď od Ernst
Joomla Expert
i tenhle příklad
mi v consoli napíše Uncaught TypeError: Cannot read property 'click' of null a nereaguje na ten click
Code:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
$("#div1").load("/components/com_lovefactory/models/demo_test.txt", function(responseTxt, statusTxt, xhr){
if(statusTxt == "success")
alert("External content loaded successfully!");
if(statusTxt == "error")
alert("Error: " + xhr.status + ": " + xhr.statusText);
});
});
});
</script>
</head>
<body>
<div id="div1"><h2>Let jQuery AJAX Change This Text</h2></div>
<button>Get External Content</button>
</body>
</html>
04. lis 2015 13:00 #124334
Odpověď od Ernst
Joomla Expert
když se to pokouším řešit přímo v testvlevo.php a v něm si načtu
tak se taky formulář neobjeví, což je vlastně logické
Code:
$document = &JFactory::getDocument();
$document->addScript('/components/com_lovefactory/models/testvlevo.js');
04. lis 2015 13:39 #124336
Odpověď od Cony
Moderátor
A nemícháte mootools a jQuery? Pokud nahráváte i mootools používejte místo $ jQuery.
04. lis 2015 14:59 - 04. lis 2015 15:06 #124339
Odpověď od Ernst
Joomla Expert
já jsem to asi totálně zamíchal tím, že jsem uvedl ty příklady co jsem zkoušel.
Tak raději od počátku
Prní část proběhne ok a do data mi to z testvlevo.php vrátí hodnoty pro předvyplnění formuláře. a dál v tom mám asi zmatek.
Zavolá se funkce zobrazeno a to
mi do logu vypíše
jen pro úplnost v tom testvlevo.js
je
To znamená mám funkční php, které mi z databáze načte hodnoty pro předvyplnění formuláře a úspěšně je pošle do "data".
pak mám php, které data z formuláře zapíše zpět do databáze.
Jen ten formulář se mi nedaří zobrazit.
Když jsem použil ten document.write, tak vše správně probíhalo, jen se ten formulář vypsal bůhví kde a stránky se staly nefunkční.
Už propadám beznaději a nevím, zda jsem to schopen dopsat.
Opravdu by jste mi za nějaký peníz ten kousek kódu nenapsal?
PS funkce formuloz je momentálně v kódu navíc nic ji nevolá
PS2 netuším co je mootools
pokud tedy napíši, jak doporučujete
už to chybu v consoli nehlásí, ale formulář se nezobrazí
Tak raději od počátku
Code:
<script type="text/javascript">
testajax()
function testajax(){
jQuery.ajax({
url: '/components/com_lovefactory/models/testvlevo.php'
}).done(function(data){
console.log(data);
zobrazform(data);
}).fail(function(){
console.log('Odeslání selhalo');
});
};
function zobrazform(data) {
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js");
}
function formuloz(formular){
if (document.formular.form4.checked==true){var p3 = "1";} else {var p3 = "0";};
jQuery.ajax({
url: '/components/com_lovefactory/models/lmenutest.php',
data: {d3: p3}
}).done(function(){
console.log('Odeslano');
javascript: document.location.reload ();
}).fail(function(){
console.log('Odeslání selhalo');
});
};
</script>
Zavolá se funkce zobrazeno a to
Code:
$("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js");
Code:
Uncaught TypeError: Cannot read property 'load' of null
je
Code:
<form name="form">
<hr size="1" color="#999999" width="90%" />
<input type="checkbox" name="form2" /> <span style="color: #999999;">Skryj moje umístění na mapě</span><br>
<input type="checkbox" name="form3"/> <span style="color: #999999;"><a href="/index.php/cs/my-profile"> Změň svoji pozici na mapě</a></span><br><br>
<hr size="1" color="#999999" width="90%" />
<span style="font-size: 9pt;"> <strong style="color: #999999; background-color:transparent;"><span style="color: #e4e4e4; font-family: Arial;">Jen pro</span></strong><span style="color: #8cc741; background-color: transparent;"><strong><span style="font-family: Arial;"> TOP</span></strong></span><strong style="color: #999999; background-color: transparent;"><span style="color: #e4e4e4; font-family: Arial;"> nebo </span></strong><span style="color: #8cc741; background-color: transparent;"><strong><span style="font-family: Arial;">VIP</span></strong></span><strong style="color: #999999; background-color: transparent;"><span style="color: #e4e4e4; font-family: Arial;"> uživatele:</span></strong></span><span style="font-size: 9pt; font-family: 'arial black', 'avant garde';" data-mce-bogus="1"> <span id="_mce_caret" data-mce-bogus="1"><span style="background-color: transparent;" data-mce-bogus="1"></span></span></span>
<input type="checkbox" name="form4"/> <span style="color: #999999;">Skryj vzdálenost</span><br>
<input type="checkbox" name="form5"/> <span style="color: #999999;">Skryj datum přihlášení</span><br>
<input type="checkbox" name="form6"/> <span style="color: #999999;">Skryj koho jsem návštívil</span><br>
<input type="checkbox" name="form7"/> <span style="color: #999999;">Skryj reklamy</span><br>
<a href="javascript:formajax();"><img src="../images/tl_refresh_a.png" ></a>
</form>
<script>
function formajax(form){
if (document.form.form2.checked==true){ var p1 = "1";} else {var p1 = "0";};
if (document.form.form3.checked==true){ var p2 = "1";} else {var p2 = "0";};
if (document.form.form4.checked==true){ var p3 = "1";} else {var p3 = "0";};
if (document.form.form5.checked==true){ var p4 = "1";} else {var p4 = "0";};
if (document.form.form6.checked==true){ var p5 = "1";} else {var p5 = "0";};
if (document.form.form7.checked==true){ var p6 = "1";} else {var p6 = "0";};
jQuery.ajax({
url: '/components/com_lovefactory/models/lmenu.php',
data: {d1: p1, d2: p2,d3: p3, d4: p4, d5: p5, d6: p6}
}).done(function(){
console.log('Odeslano');
javascript: document.location.reload ();
}).fail(function(){
console.log('Odeslání selhalo');
});
}
</script>
pak mám php, které data z formuláře zapíše zpět do databáze.
Jen ten formulář se mi nedaří zobrazit.
Když jsem použil ten document.write, tak vše správně probíhalo, jen se ten formulář vypsal bůhví kde a stránky se staly nefunkční.
Už propadám beznaději a nevím, zda jsem to schopen dopsat.
Opravdu by jste mi za nějaký peníz ten kousek kódu nenapsal?
PS funkce formuloz je momentálně v kódu navíc nic ji nevolá
PS2 netuším co je mootools
pokud tedy napíši, jak doporučujete
Code:
function zobrazform(data) {
jQuery("#sem_nacteme").load("/components/com_lovefactory/models/testvlevo.js");
}
05. lis 2015 09:10 #124355
Odpověď od Cony
Moderátor
Ježiš to je zase kódu. A element (zřejmě div) s id sem_nacteme na stránkách máte?
Poděkovali: Ernst