Autor Zpráva
pexik
Profil *
Ahoj,
mám takový to kód:

<html>
<head>

<script Language="JavaScript">

function load(){ 
var ajax = (window.XMLHttpRequest ? new XMLHttpRequest() : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false)); 
if(!ajax){ 
alert("Tak tady AJAX nepobìží,\n takže pøistoupíme k ménì kvalitnímu zpùsobu(obyèejná aktualizace stránky.\n\n Jak tento problém vyøešit? Nainstalovat novou verzi prohlížeèe");
return false;

if(ajax != false){
ajax.open("GET", "chat-zpravy-php.php"+Math.random(), true);  
ajax.onreadystatechange= function () {replace(); };
ajax.send(null);
return true;}
}

function replace (){
var ajax = (window.XMLHttpRequest ? new XMLHttpRequest() : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false)); 
if(!ajax){ 
alert("Tak tady AJAX nepobìží,\n takže přistoupíme k ménì kvalitnímu zpùsobu(obyèejná aktualizace stránky.\n\n Jak tento problém vyøešit? Nainstalovat novou verzi prohlížeèe");
return false;
}

  if (ajax.readyState == 4)
  {
    if(ajax.status == 200)
    {
      var mistoZobrazeni = document.getElementById("body");
      mistoZobrazeni.innerHTML = ajax.responseText;
    }
    else
    {
     alert("Chyba pri nacitani stanky"+ ajax.status +":"+ ajax.statusText);
    }
  }


}

</script>

</head>
<body id="body" onLoad="window.scrollBy(0, 9999999); load();">

<?php  
$spojeni = MySQL_connect ("mysql.ic.cz", "ic_pexxxik", "anezka") or die ("Spojeni s databázovým serverem se nezdaøilo");
MySQL_select_db ("ic_pexxxik", $spojeni);

$vypis2 = mysql_query("SELECT * FROM chat WHERE (komu = 'vsem' OR komu = '$prezdivka')", $spojeni); // ORDER BY date DESC LIMIT 20 ,  FOR XML AUTO

while($vypis=MySQL_fetch_array($vypis2)):
echo "<br><b>".$vypis["prezdivka"]."</b>&nbsp;".$vypis['text']."\n";
endwhile;
?>

</body>
</html>


no a ajax vůbec nefunguje, tak prosím o radu, možná mám celej kód špatně
Mastodont
Profil
Zkusil jsem si to zkopírovat a editor mi říká, že { za load() je sirotek, chybí odpovídající }
pexik
Profil *
To moc nechápu???
fandaa
Profil
Že ti u funkce load() chybí ukončovací svorka.
pexxxik
Profil
Tak jsem to změnil, ale pořád to nefunguje. Kód teď vypadá nějak takto:


<html>
<head>

<script Language="JavaScript">

function load(){
var ajax = (window.XMLHttpRequest ? new XMLHttpRequest() : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false));
if(!ajax){
alert("Tak tady AJAX nepobìží,\n takže pøistoupíme k ménì kvalitnímu zpùsobu(obyèejná aktualizace stránky.\n\n Jak tento problém vyøešit? Nainstalovat novou verzi prohlížeèe");
return false;

if(ajax != false){
ajax.open("GET", "chat-zpravy.php.php"+Math.random(), true);
ajax.onreadystatechange= function () {replace(); };
ajax.send(null);
return true;     }
            }

                      }

function replace (){
var ajax = (window.XMLHttpRequest ? new XMLHttpRequest() : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false));
if(!ajax){
alert("Tak tady AJAX nepobìží,\n takže přistoupíme k ménì kvalitnímu zpùsobu(obyèejná aktualizace stránky.\n\n Jak tento problém vyøešit? Nainstalovat novou verzi prohlížeèe");
return false;
}

if (ajax.readyState == 4)
{
if(ajax.status == 200)
{
var mistoZobrazeni = document.getElementById("body");
mistoZobrazeni.innerHTML = ajax.responseText;
}
else
{
alert("Chyba pri nacitani stanky"+ ajax.status +":"+ ajax.statusText);
}
}


}

</script>

</head>
<body id="body" onLoad="window.scrollBy(0, 9999999); load();">

<?php
$spojeni = MySQL_connect ("mysql.ic.cz", "ic_pexxik", "asdfgh") or die ("Spojeni s databázovým serverem se nezdaøilo");
MySQL_select_db ("ic_pexxik", $spojeni);

$vypis2 = mysql_query("SELECT * FROM chat WHERE (komu = 'vsem' OR komu = '$prezdivka')", $spojeni); // ORDER BY date DESC LIMIT 20 , FOR XML AUTO

while($vypis=MySQL_fetch_array($vypis2)):
echo "<br><b>".$vypis["prezdivka"]."</b>&nbsp;".$vypis['text']."\n";
endwhile;
?>

</body>
</html> 


udělal jesm jenom to co jsi mi psal, tak jestli v tom nevidíte ještě nějakou chybu. A jakym to děláš editorem???
pexxxik
Profil
Jo nenapsal jsem vlastně co potřebuji. Je to na chat, no a tohle je výpis zpráv a já potřebuji aby byl online (tj. dokola kontroloval jestli nepřibila zpráva)
Měsíček
Profil
Reaguji na pexxxika:

Docela by mne zajímalo odkud jsi tuto hrůzu posbíral a nebo lépe řečeno odkopíroval. Metody open(), send() máš v bloku, který se vykoná pokud se nedokáže vytvořit instance (!ajax), takže logicky, když se ti podaří instance vytvořit stejně se to k tomu nedostane.
srigi
Profil
Tiez vytvorenie http objektu nie je moc dobre.
honza(neregistrovaný)
Profil *
pro: Měsíček jeden kousek kodu náramně připomíná část článku ze stránky digitální Citrón.

Píšu sem hlavně proto abych vyjádřil svoje pohoršení nad zcela zbytečnými komentáři jako je ten od srigiho. Naprosto nic neřeší.

Aby se můj koment podobné chybě vyhl přidám alespoň pár linek, které by dalším co řeší podobný problém, mohly pomoct.

Univerzální funkce pro AJAX ... článek navazuje na dříve zmíněný zdroj kódů digitální Citrón

AJAX ... obšírnější ale užitečnější článek na Root.cz

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: