Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Wahrscheinlich Syntaxfehler, den ich nicht finde...

  1. #1
    Fortgeschrittene/r
    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Wahrscheinlich Syntaxfehler, den ich nicht finde...

    Hi Leute,

    ich bastel grad ein Skript, das einfach nicht funktionieren will. Irgendwo muss bei der SELECT Abfrage ein Fehler sein. Denn das Ergebnis ist immer 1, und sollte eigentlich eine Resource ID sein.
    Leider find ich den Fehler nicht und konnte mir auch über google nicht weiterhelfen...

    Könnt ihr mich aufklären?

    Code:
    for &#40;$i = 0; $i<count&#40;$nmarr&#41;; $i++&#41;
            &#123;
                $countt0 = 0;
                $countt1 = 0;
                $countw0 = 0;
                $countw1 = 0;
                $sql = "SELECT reason,event FROM vlist_evth WHERE name = '".$nmarr&#91;$i&#93;."'";   // hier MUSS irgendwo der Fehler sein
                echo $sql."
    \n";
                $result = mysql_query&#40;$sql&#41; || die&#40;"Fehler beim Lesen aus der Datenbank. Grund&#58;".mysql_error&#40;&#41;&#41;;
                echo $result;                                 //das Ergebnis ist immer 1, aber warum?
                while &#40;$row = mysql_fetch_assoc&#40;$result&#41;&#41;     //das Script bricht ab, da $result keine Resource ID ist
                &#123;
                    if &#40;$row&#91;'event'&#93; == "t"&#41;       // den
                    &#123;                               // Code
                        if &#40;$row&#91;'reason'&#93; == 0&#41;    // muss
                            $countt0++;             // ich
                        if &#40;$row&#91;'reason'&#93; == 1&#41;    // noch
                            $countt1++;             // überarbeiten
                    &#125;                               // ...
                    if &#40;$row&#91;'event'&#93; == "w"&#41;       // ...
                    &#123;                               //...
                        if &#40;$row&#91;'reason'&#93; == 0&#41;    // ...
                            $countw0++;             // ...
                        if &#40;$row&#91;'reason'&#93; == 1&#41;    // ...
                            $countw1++;             // ...
                    &#125;                               // ...
                &#125;
    Schonmal tausend Dank im voraus, auch wenns nicht klappen sollte...
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    echo $result; ja ne ist klar ... das mti dme immer eins, giebt als boolen aus 1 query war IO 0 konnten icht ausgeführt werdem

    wenn dann must du: echo mysql_num_rows($result);


    echo $sql."
    \n
    ersetzen in:

    $tmp=mysql_error();
    if (!empty($tmp))
    echo $tmp."
    \n".$sql."
    \n";

  3. #3
    Fortgeschrittene/r
    Themenstarter

    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Zitat Zitat von GreenRover
    das mti dme immer eins, giebt als boolen aus 1 query war IO 0 konnten icht ausgeführt werdem
    Sorry, aber den Satz versteh ich nicht. Ist irgendwie schwer zu lesen.

    Zu dem "echo $result;" und "echo $sql;":
    das steht nur temporär drin. Das bleibt natürlich nicht im Code.
    Ich dachte das bei "echo $result;" etwas wie "Resource id #1" rauskommen müsste.

    Ich depp hab mich wahrscheinlich ein bisschen unklar ausgedrückt. Denn wenn ich das Skript laufen lasse, kommt folgender Fehler:
    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\vliste\gen.php on line 22
    In der 22ten Zeile wird die mysql_fetch_assoc() Funktion aufgerufen. Da er keine richtige Resource ID bekommt, meckert er. Das heißt das die Datenbankabfrage drüber irgendwie schief geht...

    Danke für die Antwort, aber der Fehler ist leider dadurch nicht behoben.

  4. #4
    Großmeister(in)
    Registriert seit
    27.09.2005
    Beiträge
    591
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    mach mal hinter den query ein
    Code:
    OR die&#40;mysql_error&#40;&#41;&#41;;
    lieber mal hier http://de.selfhtml.org nachgucken

  5. #5
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    dann guck dir den 2ten teil meies postes an, dr dürfte in deinem fall einen debug message ausgeben.

  6. #6
    Fortgeschrittene/r
    Themenstarter

    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    @ pindakaas:
    Das hab ich doch drin: "$result = mysql_query($sql) || die("Fehler beim Lesen aus der Datenbank. Grund:".mysql_error());"
    Ich nutze lieber || als OR, da ich es aus c++ so gewohnt bin.

    @ rover:
    Ich versteh den Unterschied zwischen meinem "|| die(...)" und deinem nicht. Du speicherst doch nur die eventuelle Fehlermeldung zwischen.
    Also ich habs natürlich trotzdem ausprobiert, aber er gibt mir keine Fehlermeldung aus. Er durchläuft also mysql_error() ohne Probleme, und bricht dann bei mysql_fetch_assoc() ab.

    => die query läuft anscheinend ohne Fehler, aber es wird keine Resource ID zurückgegeben... ich bin wirklich überfragt (weswegen ich hier auch gepostet habe)

  7. #7
    Fortgeschrittene/r
    Themenstarter

    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Oh man, könnte mir das mal einer erklären:

    Ich hab langsam den Fehler eingekreist und rausgefunden das es an der Zeile liegen MUSS.
    Code:
    $result = mysql_query&#40;$sql&#41; || die&#40;"Fehler beim Auslesen der Datenbank. Grund&#58;".mysql_error&#40;&#41;&#41;;
    Ok dachte ich mir, lass mal die Funktion die() weg. Und siehe da, es funktioniert einwandfrei !!!
    Also woran hats gelegen. Jetzt hab ich einfach mal ausprobier, das || durch OR zu ersetzen.
    Code:
    $result = mysql_query&#40;$sql&#41; OR die&#40;"Fehler beim Auslesen der Datenbank. Grund&#58;".mysql_error&#40;&#41;&#41;;
    Man sieht es ist genau die selbe Zeile wie oben, nur ein OR statt ||. Und jetzt gehts...

    Aber warum? Ich wüsste gerne warum hier ein OR funktioniert und das || nicht. Bin das nämlich durch c++ gewohnt zu nutzen. Also wenn mich jemand aufklären kann, wäre ich sehr dankbar.

  8. #8
    Großmeister(in)
    Registriert seit
    27.09.2005
    Beiträge
    591
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    sicher das das auch in php geht?
    lieber mal hier http://de.selfhtml.org nachgucken

  9. #9
    Fortgeschrittene/r
    Themenstarter

    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Laut dem php-Manual (klick) sollte es gehen. Hatte || auch in anderen Anweisungen und es gab nie Probleme (weder Syntaxerror noch andere Fehler).

  10. #10
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    das ||geht leider nur als vergleichs operator und NICHT in diesem falle. Isth alt PHP kein C :-p

Ähnliche Themen

  1. mail() geht nicht, finde den Fehler nicht. :(
    Von FaFoo im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 25.06.2007, 16:30
  2. WICHTIGE FRAGE (wahrscheinlich nicht so kompliziert;)
    Von javascript-anfänger im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 22.05.2007, 15:42
  3. finde Fehler nicht
    Von Halloween im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 12.11.2006, 14:08
  4. Finde nicht die richtige
    Von Lifestyle16 im Forum Off Topic und Quasselbox
    Antworten: 12
    Letzter Beitrag: 25.10.2006, 10:05
  5. finde den fehler nicht
    Von rosielsama im Forum HTML & CSS Forum
    Antworten: 3
    Letzter Beitrag: 16.09.2006, 14:01

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •