Ajax Hiba
2008-10-19T09:58:01+02:00
2008-10-19T15:34:39+02:00
2022-07-19T10:16:30+02:00
GodKnightX(php)
Üdv.
Még csak most ismerkedtem meg az Ajaxal, és most kicsit bonyolítottam rajta.
Minden tökéletes (LENNE), ha nem írná ezt a hibakódot:
Error: syntax error Source File: http://82.150.46.146/sirius/proba.sirius?akcio=ajax Line: 1, Column: 1 Source Code: Teszt válasz! POST: (nevem)-(teszt)
A PHP fájlom:
<? include("funkciok.php"); dbconn(); loggedinorreturn(); $a=$_GET["akcio"]; $nev=$_POST["nev"]; $teszt=$_POST["teszt"]; if(!$a) stdhead(); if($a == "ajax") echo"Teszt válasz! POST: ($nev)-($teszt)"; if(!$a) { xajax(); echo"<a href='#' onClick=\"ajax('POST','proba.sirius?akcio=ajax','nev=nevem&teszt=teszt',true,'devvosz','Töltés...','Betöltve!'); return false;\">Teszt indítása!</a>"; echo"<br>"; echo"Állapota: <span id=devvosz>Nincs futtatva AJAX kérés!</span>"; } if(!$a) stdfoot(); ?>

A kiirató funkció (phpban), és a benne lévő ajax funkció(javascriptben)
function xajax($kezdo="off",$tagveg="_1"){ if($kezdo=="on")$tv=$tagveg; else$tv=""; echo" <script type=text/javascript language=Javascript> function ajax(muvelet$tv, link$tv, adatok$tv, megvar$tv, kiiratos$tv, kiiras$tv, kiiras2$tv){ kiirato$tv = document.getElementById(kiiratos$tv); muvelet$tv.toUpperCase(); var ajaxf$tv = false; // Ajax a böngésző típusához igazítása if(window.XMLHttpRequest){ ajaxf$tv = new XMLHttpRequest; if (ajaxf$tv.overrideMimeType) { ajaxf$tv.overrideMimeType('text/xml'); } } else if(window.ActiveXObject){ ajaxf$tv = new ActiveXObject('Microsoft.XMLHTTP'); } else alert('A böngésződ nem támogatja az AJAXot! Kérlek telepits fel egy újabb böngészőt, pl. Opera, FireFox, vagy IE.'); //Ellenőrzés if(!ajaxf$tv || ajaxf$tv == false){ alert('Az ajax nem töltődött be!'); return(false); } // Maga az AJAX művelet! ajaxf$tv.open(muvelet$tv,link$tv,megvar$tv); if(muvelet$tv == 'POST') ajaxf$tv.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8'); ajaxf$tv.send(adatok$tv); // Változáskor ajaxf$tv.onreadystatechange=function(){ if(ajaxf$tv.readyState < 4) kiiratos$tv.innerHTML = kiiras$tv; if(ajaxf$tv.readyState == 4){ kiiratos$tv.innerHTML = kiiras2$tv; } } } </script> "; }

Már sok dolgot próbáltam, de nem értem, hogy miért PONT a phps kiiratásra írja a hibát :\
Előre is köszönöm a segitségeket!
Mutasd a teljes hozzászólást!
Szia!

Hát addig nem is nagyon lehet rajtad segíteni, amíg ennyire átláthatatlan az, amit írsz, de ami nekem kapásból szembetűnik az az, hogy az xajax() fgv-t azt a php keresztül hívod, miközben az egy javascript fgv. Ha azt akarod, hogy futtassa, javaslom ezt írd oda:
echo '<script>xajax();</script>';
Amúgy a $tv változót szerintem így sem kapod meg, ott ki kellene minden
$tv
-t cserélni
<?php echo $tv?>
-re
Meg ahol ilyen $valami-ket használsz, azzal se tudsz nagyon mit kezdeni js-ben.
Az oldal forrását nem árt megnézni, amikor megjelenik az oldal

Gondolom az általam elsőnek vett fgv. hívás okozza pont a php-s résznél a hibát.

remélem segített valamit.

Üdv:
Csiszi
Mutasd a teljes hozzászólást!

  • Nah, valaki mostmár segíthetne
    Mutasd a teljes hozzászólást!
  • Szia!

    Hát addig nem is nagyon lehet rajtad segíteni, amíg ennyire átláthatatlan az, amit írsz, de ami nekem kapásból szembetűnik az az, hogy az xajax() fgv-t azt a php keresztül hívod, miközben az egy javascript fgv. Ha azt akarod, hogy futtassa, javaslom ezt írd oda:
    echo '<script>xajax();</script>';
    Amúgy a $tv változót szerintem így sem kapod meg, ott ki kellene minden
    $tv
    -t cserélni
    <?php echo $tv?>
    -re
    Meg ahol ilyen $valami-ket használsz, azzal se tudsz nagyon mit kezdeni js-ben.
    Az oldal forrását nem árt megnézni, amikor megjelenik az oldal

    Gondolom az általam elsőnek vett fgv. hívás okozza pont a php-s résznél a hibát.

    remélem segített valamit.

    Üdv:
    Csiszi
    Mutasd a teljes hozzászólást!
  • Üdv.
    Köszi, igen, nem PHPban kellett volna írnom (de lehet abban is), hanem JSben PHP tagokkal beszúrva a $tv-t
    És még el is irtam ezt:
    Nem "kiiratos$tv.innerHTML"
    Hanem "kiirato$tv.innerHTML"
    :)
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd