Terminál Fórum
https://www.technokrata.hu/forum/

Ajax POST nem működik. - Megoldva -
https://www.technokrata.hu/forum/viewtopic.php?f=19&t=35635
Oldal: 1 / 1

Szerző:  Dxd1 [ szer. feb. 06, 2008 22:07 ]
Hozzászólás témája:  Ajax POST nem működik. - Megoldva -

Sziasztok!

Nemrég kezdtem el ajaxozni. Egyelőre localhoston ügyködök vele. Sajnos megakadtam. Azt szereném, hogyha a függvénynek megadok egy e-mail címet, akkor a mailcim.php lefutna és megnézné, hogy benne van-e az adatbázisban. Ha nincsen, akkor kiírja, hogy "jo". Ezt visszakapja a JavaScript és ennek megfelelően viselkedik.

A php tartalma (egyelőre :D ):
Kód:
<?php echo="jo"; ?>


Az egyik gond az, hogy amikor lefuttatom, a
Kód:
if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200)
-n belüli rész nem fut le.
Próbáltam GET-tel is. Ez már jobban működik, de a "good" változó valamiért átállítódik "false-ra".

A teljes függvény:

Kód:
function getOptions(email)
{
var good = false;
 var url = "script/mailcim.php";
     if(XMLHttpRequestObject) {
     XMLHttpRequestObject.open("POST", url);
     XMLHttpRequestObject.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
     XMLHttpRequestObject.onreadystatechange = function()
     {
                                             if (XMLHttpRequestObject.readyState == 4 &&
                                             XMLHttpRequestObject.status == 200) {
                                             var joep = XMLHttpRequestObject.responseText;
                                             if (joep=="jo"){good=true;}
                                             }
                                             }
     XMLHttpRequestObject.send("email=" + email);
     }
return good;
}


Kérlek, segítsetek kijavítani a hibát, vagy adjatok alternatív megoldást!

A válaszokat előre is köszönöm!

Késöbb:

Válasz ugyan nem érkezett, de megoldottam a problémát. Egy oldalon találtam egy forrást. Azt átalakítottam. Az eredmény ez lett:
Kód:
 function getOptions(emal) {
strURL="script/mailcim.php";
var blnXMLHttpRequest = false;
//document.getElementsByName("submit")[0].disabled = true;
if(window.XMLHttpRequest) {
                          XMLEngine = new XMLHttpRequest();
                          if(XMLEngine) {
                          var blnXMLHttpRequest = true;
                          }
                          }
else if(window.ActiveXObject) {
XMLEngine = new ActiveXObject("Microsoft.XMLHTTP");
             if(XMLEngine) {
             var blnXMLHttpRequest = true;
                               }
                          }
else {
return true;
                          }
if(blnXMLHttpRequest) {
XMLEngine.open("POST", strURL, false);
XMLEngine.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=iso-8859-1");
XMLEngine.setRequestHeader("Connection", "close");
XMLEngine.send("emal="+emal);
if(XMLEngine.status == 200) {
var joe = XMLEngine.responseText;
if (joe=="jo"){return true;}
else {return false;}
}
else {
alert("Hiba történt a kapcsolatban. Kérlek, próbáld újra!");
}
}
else {
return true;
}
return false;
}

Remélem valakinek hasznára válik.

Oldal: 1 / 1 Időzóna: UTC + 1 óra
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/