Antworten
Zitat:
Zionath postete
glaube das am if irgendwas falsch ist
Glauben heißt nicht wissen!
Code: In Zwischenablage kopieren (nur IE)
Das ist eine Zuweisung und kein Vergleich
*** Nobody ***
2.
Code: In Zwischenablage kopieren (nur IE)
So müsste es gehen
Was Nobody schon sagte
Du sollst nichts zuweisen sondern vergleichen
3.
danke aber jetzt zeigt er gar nichts mehr an ist doch nun soweit richtig
Code: In Zwischenablage kopieren (nur IE)
Code: In Zwischenablage kopieren (nur IE)
4.
Standard-Antwort:Richtig debuggen
1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
3. An den Anfang des Scriptes schreibt man die Zeile: error_reporting(E_ALL);
4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
5. Schritt 4 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.
Die Ausgaben per echo kann man sich ersparen, in dem man einen Debugger benutzt.
besonders:
4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).5.
Da passt doch logisch was nicht.
Du lässt dir doch nur einen einzigen Datensatz zurückliefern (...WHERE userid='$userid').
Da brauchst du doch beim Auslesen nicht mehr prüfen, ob das die 2 ist.
6.
mit SELECT * liefert er mir ja erstmal alle daten aus der tabelle vom user welcher eingeloggt ist,
und nun wollte ich mit der neuen abfrage es so machen das der admin mit der userid zwei zusätzliche buttons eingeblendet bekommt. also er schaut nochmal userid 2? ok dann dürfen die anderen buttons auch mit rein
7.
Ja, okay. Geht auch so.
Wird überhaupt ein Datensatz ausgelesen?
Also
[doc]mysql_error,mysql_num_rows[/doc]
eingebaut?