foto.Graf
Hallo Alle!
Ich versuche gerade mit folgendem skript einen user einzuloggen, ich scheitere aber immer wieder an der funktion mysql_fetch_object() ich übergebe eine korrekte Query (glaub ich zumindst) aber die funktion holt keine daten. Ein fataler fehler liegt aber auch nicht vor es wird keiner ausgegeben selbst mit mysql_error() nicht. hier mal der code, die Verbindung zur datenbank wird weiter oben korrekt hergestellt
Das problem liegt mit sicherheit in der angegebenen zeile mit
hab ich das getestet.
s wäre sehr nett wenn sich jemand das skript anschauen könnte und mir sagen kann ob ich einfach nur blind bin und einen banalen fehler nicht finde oder irgendwas falsch eingestellt ist! Die immer wieder verwendete funktion 'post()' ist selbst geschrieben und enthält folgenden code
lg
nullnullsix
EDIT!!
Oh mann, ich hab das problem gelöst, ich hab den code nochmal geschrieben und gemerkt, dass wenn mann hinter mysql_fetch_object() ein or die("asdf") schreibt, die funktion immer abstürzt. jetzt funktionierts! juhU!
Ich versuche gerade mit folgendem skript einen user einzuloggen, ich scheitere aber immer wieder an der funktion mysql_fetch_object() ich übergebe eine korrekte Query (glaub ich zumindst) aber die funktion holt keine daten. Ein fataler fehler liegt aber auch nicht vor es wird keiner ausgegeben selbst mit mysql_error() nicht. hier mal der code, die Verbindung zur datenbank wird weiter oben korrekt hergestellt
PHP:
case "login":{
$error = "";
if(isset($_POST['submit'])){
$email = post('user_mail');
$pw = post('user_pw');
$query = "SELECT id, email, smm_pass, verified FROM smm_users WHERE email = '$email'";
$sql = @mysql_query($query) or die("Fehler1");
while($ds = @mysql_fetch_object($sql) or die(mysql_error())){//HIER LIEGT DAS PROBLEM
$id = $ds -> id;
$email_db = $ds -> email;
$pw_db = $ds -> smm_pass;
$verified_db = $ds -> verified;
}
if(empty($email)) $error .= "<li>keine email eingegeben wurde</li>";
if(empty($pw)) $error .= "<li>kein passwort eingegeben wurde</li>";
elseif($email != $email_db || $pw != $pw_db) $error .= "<li>diese email-passwort-kombination nicht existiert</li>";
elseif($verified_db == 0) $error .= "<li>deine registrierung noch nicht abgeschlossen ist</li>";
if(empty($error)){
$query = "SELECT visits FROM smm_users WHERE id = '$id'";
$sql = @mysql_query($query) or die(mysql_error());
while($ds = mysql_fetch_object($sql) or die("ich will die lösung")){
$visits = $ds -> visits;
}
$visits++;
$query = "UPDATE smm_users SET visits = '$visits' WHERE email = '$email'";
setcookie("smm_user", $email, time() + 60*30);
header("Location: home.php");
}else $pc2 = "du konntest nicht eingeloggt werden, weil".$error;
}else $pc2 = $notex;
break;
Das problem liegt mit sicherheit in der angegebenen zeile mit
PHP:
mysql_fetch_object($sql) or die("fehlersoundso");
s wäre sehr nett wenn sich jemand das skript anschauen könnte und mir sagen kann ob ich einfach nur blind bin und einen banalen fehler nicht finde oder irgendwas falsch eingestellt ist! Die immer wieder verwendete funktion 'post()' ist selbst geschrieben und enthält folgenden code
PHP:
<?php
function post($stream){
$stuff = htmlspecialchars($_POST[$stream]);
if(get_magic_quotes_gpc()) $stuff = stripslashes($stuff);
return trim($stuff);
}
?>
nullnullsix
EDIT!!
Oh mann, ich hab das problem gelöst, ich hab den code nochmal geschrieben und gemerkt, dass wenn mann hinter mysql_fetch_object() ein or die("asdf") schreibt, die funktion immer abstürzt. jetzt funktionierts! juhU!
Zuletzt bearbeitet: