OT: javascript nepředává parametry
"Ing. Jiří Nováček"
jnovacek na spst.cz
Čtvrtek Únor 14 21:01:28 CET 2008
Dobrý den
opět mám problém a nikde jinde žádnou odpověď nedostávám.
Na základě odpovědi zde v konferenci jsem na netu našel způsob jak
předat z javascripru (XMLHttpRequest) data přes PHP do MySQL. Zavolám
SendData s příslušným SQL scriptem. Vrací se ID přidaného záznamu. Tuto
hodnotu potřebuji předat dál do funkce, která SendData volala. Když jsem
měl na konci funkce pouze "return http_request.responseText;" tak se nic
nevracelo. Přidal jsem pro kontrolu zobrazení hodnoty pomocí alert. V
alertu se příslušná hodnota nezobrazí, ale funkce už ji vrací. Co dělám
špatně! Když alert smažu tak to zase přestane fungovat.
Předem moc děkuji
Jirka
function returnValidate(http_request) {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
if (http_request.responseText = 0) alert("Chyba SQL scriptu.";
} else {
alert('Chyba při komunikaci se serverem.');
}
}
}
function SendData(sql) {
var http_request = false;
var request = "sql="+sql;
if (window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
} else if (window.ActiveXObject) {
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (eror) {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
}
}
http_request.onreadystatechange = function() {
returnValidate(http_request); };
http_request.open('POST', 'data/savetodb.php', true);
http_request.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
http_request.send(request);
//
alert("navracené id"+http_request.responseText);
return http_request.responseText;
}
Další informace o konferenci Linux