Update Funzt Nicht!

Ich habs jetzt selber rausbekomen! Natürlich muss erst die Handlung also SET aktiviert='1' und dann WHERE....
So jetzt hab ich noch ein Problem! Der soll das nur machen, wenn das Passwort und der Nick auch exisiteren! Wie mache ich das denn nun?
 
oups...

jo stimmt, das ist mir garnicht aufgefallen... naja 'n tip beim naechstem mal dein script via [ code ]script[ /code ] darstellen... :-)

Heh? ... du hast doch schon eine WHERE abfrage drin... aber nun gut.. hiermit kannste es pruefen, obwohl ich nicht ganz dein problem verstehe... da du ja bereits schon WHERE bla=bla etc machst.. ansonsten wuerde ja nichts updated.

Du packst einfach eine abfrage vor dein update query.
PHP:
$check = mysql_query("SELECT password,nick FROM $tabelle WHERE passwort='$passwort' and nick='$nick'");
if(mysql_num_rows($check) == 1) {
hier dein update_query
} else {
echo "noe!";
}
mysql_free_result($check);
mysql_close();
 
Zuletzt bearbeitet:
Jetzt stimmt wieder was nicht!

PHP:
$dbverbindung = mysql_connect ($host, $user, $password);
$check = mysql_query("SELECT * FROM $tabelle WHERE passwort='$passwort' and nick='$nick' and aktiviert='0'");
if(mysql_num_rows($check) == 1) {
echo "<center>";
echo "<b>";
echo "Entweder du hast dich nicht aktiviert oder garnicht erst angemeldet"; 
echo "</b>";
echo "</center>";
}  
else  
{ 
$dbanfrage ="UPDATE $tabelle SET aktiviert='1' where nick = '$nick' and passwort = '$passwort' ";
}
mysql_free_result($check);
mysql_close();   

?>

Aber jetzt ercsheint eine Fehlermeldung!!

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /is/htdocs/37101/www.ofm2003.de/FWL/anmeldung/aktivieren.php on line 15

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /is/htdocs/37101/www.ofm2003.de/FWL/anmeldung/aktivieren.php on line 26

Line 15 ist:
if(mysql_num_rows($check) == 1) {

und Line 26 ist:
mysql_free_result($check);

Ich hoffe wir kreigen das irgendwann nochmal hin!!

:-)
 
Hallo? Also ich hab das jetzt so geschrieben:

PHP:
$dbverbindung = mysql_connect ($host, $user, $password);
mysql_select_db($dbname);
$check = mysql_query("SELECT * FROM $tabelle WHERE passwort='$passwort' and nick='$nick' and aktiviert='0'");
if(mysql_num_rows($check) == 1) {
$dbanfrage ="UPDATE $tabelle SET aktiviert='1' where nick = '$nick' and passwort = '$passwort' ";
if (mysql_db_query ($dbanfrage)) {
print ("ok");
} else {
print ("Es traten Probleme auf.");
}
}  
else  
{ 
echo "<center>";
echo "<b>";
echo "Entweder du hast dich nicht aktiviert oder garnicht erst angemeldet"; 
echo "</b>";
echo "</center>";
}
mysql_free_result($check);
mysql_close();   
?>

Aber irgendwie kommt jetzt nur noch ein roter Hintergrund!! Was ist jetzt wieder falsch?
 
bei den vielen else und if's habe ich jetzt auch den durchblick verloren...

das einzige was ich aendern wuerde ist

PHP:
if(mysql_db_query(*)) {

in

PHP:
if($dbanfrage) {
 
mhh.. ich weiss sowieso nicht warum Du eine ueberpruefung machen moechtest, da Du ja sowieso die WHERE sachen abfragst..


PHP:
mysql_select_db($db);
$dbanfrage = mysql_query("UPDATE $tabelle SET aktiviert='1' where nick = '$nick' and passwort = '$passwort' ");
if ($dbanfrage) {
print ("ok");
} else {
print ("Es traten Probleme auf.");
}
}  
else  
{ 
echo "<center>";
echo "<b>";
echo "Entweder du hast dich nicht aktiviert oder garnicht erst angemeldet"; 
echo "</b>";
echo "</center>";
}

so reichts auch..
 
Hm warum 2 mal else?
Naja ich habs mal mit nur einem else eingebaut und das Problem dabei ist dann, dass der die mysql tabelle zwar updatet, aber wenn man bei nick und passwort einfach 1234123123 eingibt, obwolh es dieses namcen hgarnicht gibt, dann schreibt der auch "ok"!!
Genau das will ich ja vermeiden!
 
Zuletzt bearbeitet:
Zurück