ajaxauswertung
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
abfrage
aufgefallen
auswerten
break
code
erfolg
ergebnis
fehler
glauben
helfen
http
land
landen
moment
null
switch
unterscheiden
verlesen
zahl
zeichen
-
Hi ich habe ein php-script:
checkstate.php
<?php include('connect.php'); //Parameter $field = $_GET['field']; $entry = $_GET['entry']; switch($field){ case 'nickname': //Datenabfragen $abfrage = "SELECT * FROM sm_users WHERE name = '$entry'"; $ergebnis = mysql_query($abfrage); $rows = mysql_num_rows($ergebnis); if($rows > 0){ echo "exist"; }else{ if(strlen($entry) > 10){ echo "tolong"; }else{ echo "ok"; } } break; case 'mail': break; } ?>
Javascript
function check_nickname(){ var f1 = document.getElementById('field_4'); if(f1.value == ''){ document.getElementById('errlev_4').innerHTML = "<span style=\"color:red;\">Du brauchst einen Nicknamen!</span>"; }else{ var http = null; if (window.XMLHttpRequest) { http = new XMLHttpRequest(); } else if (window.ActiveXObject) { http = new ActiveXObject("Microsoft.XMLHTTP"); } if (http != null) { http.open("GET", "checkstate.php?field=nickname&entry=" + f1.value, true); http.onreadystatechange = function(){ if (http.readyState == 4) { var erg = http.responseText; switch(erg){ case 1: alert('ok'); break; case 'exist': break; case 'tolong': break; default: alert(erg); } /*if (http.responseText == "ok"){ document.getElementById('errlev_4').innerHTML = "<span style=\"color:green;\">Der Nickname ist okay!</span>"; }else{ if(http.responseText == 'exist'){ document.getElementById('errlev_4').innerHTML = "<span style=\"color:red;\">Der Nickname existiert bereits!</span>"; }else if(http.responseText == 'tolong'){ document.getElementById('errlev_4').innerHTML = "<span style=\"color:red;\">Der Nickname darf höchstens 10 Zeichen lang sein!</span>"; } }*/ } } http.send(null); } } }
dass übergebene werte prüfen soll.
Mein Javascript läd das php-script per Ajax und soll es auswerten. Aber irgendwie klappt das nicht und ich kann den Fehler nirgendwo finden. Wenn der Rückgabewert aus dem php-script 'ok' ist, dann lande ich in der javascript switch-abfrage im default-case aber nicht im ok case. Warum? überflüssige Leerzeichen sind auch nicht vorhanden!
Ich hoffe ihr könnt mir helfen!
MFG -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich glaube der Fehler liegt in deiner Denkweise.
alert(erg); gibt dir ja ok aus.
Aber wie willst du das von alert('ok') unterscheiden?
Ist ja beides exakt das selbe!?
Grüße
Edit: Moment ich habe mich verlesen!
Du hast doch garkeinen case für ok. der case heißt case 1 -> Wie sollte er im ok Case landen?
Beitrag zuletzt geändert: 3.1.2011 20:50:53 von szhgg -
sorry mein Fehler... ich hatte kurzzeitig auf zahlen
also im php echo 1; und im case eben auch 1 eingestellt um eben genau das nachzuprüfen was dir aufgefallen war. Leider auch ohne Erfolg...
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage