FisyX Geschrieben 20. Januar 2004 Teilen Geschrieben 20. Januar 2004 Habe etwas programmiert. Dieses Script soll den wert aus der spalte gag in der tabelle $_T_USERS auslesen und dann mit einem vorgegebenen wert (hier 0) vergleichen. Es soll anhand des schon bekannten namen (hier der wert nick) dessen wert im feld gag auslesen. Ist der Wert 0 soll das script weiter ausgeführt werden. andernfalls abbrechen (nichts machen). Mein Code: $result= mysql_query("SELECT gag FROM $_T_USERS WHERE nick = $user"); if ($result == "0") { $sql="INSERT INTO $_T_CHAT_MESSAGES VALUES ('','$_user->chat_raum','$text','$_user->nick','$an','$farbe','$schriftart','$format','".date('YmdHis')."')"; mysql_query($sql,$v); } else die(); } [/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
OracleFan Geschrieben 20. Januar 2004 Teilen Geschrieben 20. Januar 2004 Original geschrieben von FisyX $result= mysql_query("SELECT gag FROM $_T_USERS WHERE nick = $user"); if ($result == "0") { $sql="INSERT INTO $_T_CHAT_MESSAGES VALUES ('','$_user->chat_raum','$text','$_user->nick','$an','$farbe','$schriftart','$format','".date('YmdHis')."')"; mysql_query($sql,$v); } else die(); } // Für was soll diese Klammer sein ? [/PHP] Ausserdem kannst du nicht direkt auf die Variable Result zugreifen. Mit: [PHP] while($row = mysql_fetch_array($result)) { echo $row["gag"]; } kannst du auf die Inhalte zugrifen. Grüße Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 20. Januar 2004 Teilen Geschrieben 20. Januar 2004 Hallo! Also, ich weiß leider nicht ganz was if ($result == "0") [/PHP] soll. [i]Zitat von http://de.php.net/manual/de/function.mysql-query.php:[/i] Nur für SELECT, EXPLAIN, SHOW oder DESCRIBE Anweisungen liefert mysql_query() eine Ressourcen-Kennung oder FALSE, falls die Anfrage nicht korrekt ausgeführt wurde. Für alle anderen SQL Anweisungen ist der Rückgabewert von mysql_query() im Erfolgsfall TRUE, im Fehlerfall FALSE. Ein Rückgabewert ungleich FALSE bedeutet, dass die Anfrage gültig war und vom Server ausgeführt werden konnte. Das alleine sagt jedoch überhaupt nichts über die Anzahl veränderter oder gelieferter Datensätze aus. Es ist durchaus möglich, dass eine Anfrage erfolgreich war, ohne einen einzigen Datensatz zur verändern oder zu liefern. Vielleicht liegt der Fehler ja hier. Und du solltest mit den Ressourcen-IDs aufpassen. Einmal rufst du [b]mysql_query()[/b] nur mit der Query auf, weist den Interpreter also an, die letztbenutzte Verbindung zu verwenden. Danach, beim Eintragen in die Message-Tabelle, benutzt du die id [b]$v[/b]. Das kann zu Fehlern führen. Nach diesem Block z.B. ist die letztverwendete Verbindung nicht die user-Verbindung sondern die $v-Verbindung (Wenn dies nicht dieselben sind). Ich hoffe, du kommst ein wenig weiter. Gruß kLeiner_HobBes Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FisyX Geschrieben 20. Januar 2004 Autor Teilen Geschrieben 20. Januar 2004 mein bisheriger code: $ergebnis=mysql_query("SELECT gag FROM ".$_T_USERS." WHERE nick='".$nick."'",$v); $anzahl=mysql_num_rows($ergebnis); if ($anzahl == 0) { $sql="INSERT INTO $_T_CHAT_MESSAGES VALUES ('','$_user->chat_raum','$text','$_user->nick','$an','$farbe','$schriftart','$format','".date('YmdHis')."')"; mysql_query($sql,$v); } else { die(); }[/PHP] Das script soll den wer in der spalte gag der tabelle test mit dem von mir gewollten wert 0 vergleichen! wenn gag = 0 dann führe script aus.... andernfalls nicht. Den gag wer muss ich anhand des usernamen rausfiltern. Denn nur wenn der user in der tabellenspalte gag 0 drin stehen hat soll das script nix machen Es will ned funktionieren.... Warum ????????? Was mach ich falsch ???? :( :( Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
oneside Geschrieben 20. Januar 2004 Teilen Geschrieben 20. Januar 2004 Also, ich habe das mal auf eine Tabelle einer meiner DB angepasst und es geht. Sicher, dass deine Variablen richtig gefüllt sind??? was steht bei Dir in. $v $_T_USERS $nick Lass Dir die Werte ausgeben und überprüfe diese noch einmal! <? include("inc/db_connect.inc"); $tabelle = "db_tab_us_user"; $benutzer = "peter"; $ergebnis=mysql_query("SELECT db_us_nr FROM " . $tabelle . " WHERE db_us_name = '". $benutzer . "'"); $anzahl=mysql_num_rows($ergebnis); echo("Anzahl : " . $anzahl . "<br>"); if ($anzahl == 0) { echo("Keine Daten"); } else { echo("Daten vorhanden"); } ?> [/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FisyX Geschrieben 20. Januar 2004 Autor Teilen Geschrieben 20. Januar 2004 habs jetzt so geproggt: global $HTTP_COOKIE_VARS,$_T_USERS,$v,$_user; # Cookie auslesen $cookie=$HTTP_COOKIE_VARS['chatdaten']; if (isset($cookie) && $cookie!="") { $cookie=base64_decode($cookie); $cookie=explode(":", $cookie); $id="$cookie[0]"; $nick="$cookie[1]"; $pwd="$cookie[2]"; $ergebnis=mysql_query("SELECT gag FROM ".$_T_USERS." WHERE nick='$nick'",$v); $anzahl=mysql_num_rows($ergebnis); if ($anzahl==1) { $sql="INSERT INTO $_T_CHAT_MESSAGES VALUES ('','$_user->chat_raum','$text','$_user->nick','$an','$farbe','$schriftart','$format','".date('YmdHis')."')"; mysql_query($sql,$v); } else { die(); } }[/PHP] lese alle daten aus cookie aus. Der obige quellcode funktioniert. Aber er funktioniert auch, wenn in der spalte gag 0 eingetragen ist! Woran liegt es ??? Help :confused: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Wolle Geschrieben 20. Januar 2004 Teilen Geschrieben 20. Januar 2004 Original geschrieben von FisyX $ergebnis=mysql_query("SELECT gag FROM ".$_T_USERS." WHERE nick='$nick'",$v); Aber er funktioniert auch, wenn in der spalte gag 0 eingetragen ist! Woran liegt es ??? Du fragst ja nirgends gag ab. Wenn ich das richtig verstehe steht in gag 0 oder 1 drin. Also bringt dir die Abfrage immer ein Ergebnis $ergebnis=mysql_query("SELECT gag FROM ".$_T_USERS." WHERE nick='$nick' and gag=1",$v); So würdest du kein Ergebnis bekommen, wenn gag<>1 ist. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FisyX Geschrieben 20. Januar 2004 Autor Teilen Geschrieben 20. Januar 2004 Nach geschlagenen 4 stunden hab ichs *freu* :D :D :D Will ja mein Glück teiel... also hier der quellcode: global $HTTP_COOKIE_VARS,$_T_USERS,$v,$_user; # Cookie auslesen $cookie=$HTTP_COOKIE_VARS['chatdaten']; if (isset($cookie) && $cookie!="") { $cookie=base64_decode($cookie); $cookie=explode(":", $cookie); $id="$cookie[0]"; $nick="$cookie[1]"; $pwd="$cookie[2]"; $ergebnis=mysql_query("SELECT * FROM ".$_T_USERS." WHERE nick='$nick' AND gag='0'",$v); $anzahl=mysql_num_rows($ergebnis); if ($anzahl==1) { $sql="INSERT INTO $_T_CHAT_MESSAGES VALUES ('','$_user->chat_raum','$text','$_user->nick','$an','$farbe','$schriftart','$format','".date('YmdHis')."')"; mysql_query($sql,$v); } else { die(); } }[/PHP] THX für eure hilfe :marine Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.