[Datensätze zählen] Wo ist der Fehler..?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Datensätze zählen] Wo ist der Fehler..?

    Hallo alle zusammen,

    ich scheitere gerade an der SQL-Abfrage von den Antworten in den einzelnen Threads. Ich habe sie so gemacht. Seht ihr da einen Fehler?
    Ich orientiere mich an dem Tutorial von Martin Mayer.


    PHP-Code:

    <? 
    include("dbconnect.php");


    $res =  mysql_query("select * from threads where fid=".$_GET["fid"]);  //Herauslesen der Threads, die in dem Forum stehen 


        echo '<p><a href="index.php?go=newthread&fid='.$_GET['fid'].'">Neuen Beitrag schreiben</a></p>';

    while($row =  mysql_fetch_object($res)) { 
        echo "<tr><td bgcolor='#A9AAAB' width='550' class='table2'>";
        echo "&raquo&nbsp;&nbsp;<a href='index.php?go=showanswers&fid=$row->fid&tid=$row->id'><font class='schwarz'>"; 
        echo "$row->topic</a></td><td bgcolor='#A9AAAB' width='100' class='table'>";
        
         $result = mysql_query("SELECT * FROM answers WHERE fid=".$row->fid." AND tid=".$row->tid."");// Die Abfrage geht nicht. Es heisst mysql_num_rows(): supplied argument is not a valid MySQL result resource 

            $threads = mysql_num_rows($result);              
           echo $threads;
        echo "</td>";

    ?>




    Vielen Dank für das nachsehen....

    Alex

  • #2
    hast du schonmal was von or die(mysql_error()) gehört?

    wohl nicht...

    PHP-Code:
    <?php

        
    include("dbconnect.php");

        
    $sql "select * from threads where fid=".$_GET["fid"];
        
    $res =  mysql_query($sql) or die(mysql_error());  //Herauslesen der Threads, die in dem Forum stehen

        
    echo '<p><a href="index.php?go=newthread&fid='.$_GET['fid'].'">Neuen Beitrag schreiben</a></p>';

        while(
    $row =  mysql_fetch_object($res))
        {
            echo 
    "<tr><td bgcolor='#A9AAAB' width='550' class='table2'>";
            echo 
    "&raquo&nbsp;&nbsp;<a href='index.php?go=showanswers&fid=".$row->fid."&tid=".$row->id."'><font class='schwarz'>";
            echo 
    $row->topic."</a></td><td bgcolor='#A9AAAB' width='100' class='table'>";

            
    $sql2 "SELECT * FROM answers WHERE fid=".$row->fid." AND tid=".$row->tid;
            
    $res2 mysql_query($sql) or die(mysql_error());    // Die Abfrage geht nicht.
                                                                // Es heisst mysql_num_rows():
                                                                // supplied argument is not a
                                                                // valid MySQL result resource

            
    echo 'es sind '.mysql_num_rows($res2).' datensätze vorhanden';
            echo 
    "</td>";
        }
        
    ?>
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Jetzt geht es

      Aber die mysql_error Funktion gibt im Falle des Falles eine ausführlichere Problembeschreibung aus oder wie?

      Kommentar


      • #4
        Aber die mysql_error Funktion gibt im Falle des Falles eine ausführlichere Problembeschreibung aus oder wie?
        ja. siehe manual.

        du kannst ja mal zum spass einen feldnamen abfragen, den es nicht gibt.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          selber lesen macht schlau *g*

          http://www.php.net/manual/de/function.mysql-error.php
          EDIT:
          *grml*

          to slow

          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            Original geschrieben von mrhappiness
            EDIT:
            *grml*

            to slow

            OffTopic:

            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              Sorry sorry


              Vielen Dank für die schnelle Hilfe.
              Ich glaube ich laufe über vom FF nach hier

              Kommentar


              • #8
                gern geschehen
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  Original geschrieben von mrhappiness
                  gern geschehen
                  auch von mir...
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #10
                    Ich habe irgendwie gerade sonen kleinen Aussetzer:

                    Ich baue ja gerade ein kleines Forum und basiere dabei auf dem Tutorial von Martin Mayer hier von php-resource.de . Nun möchte ich die Beiträge der einzelnen Threads auslesen und komme damit nicht ganz klar.

                    Ich habe eine Tabelle "answers", dort werden die aller Sektionen des Forums Antworten gespeichert. Jeder Thread, egal welche Sektion, bekommt ja eine eigene tid (Topic-ID) zugewiesen. Nun wäre es ja eigentlich logisch, denke ich , wenn man einfach die einzelnen Datensätze zählt, die diese Topic-ID besitzen um die Antwort auf die Frage zu bekommen. Nun habe ich das so gelöst, aber er zeigt die insgesamte Anzahl der Beiträge in dem zugeteilten Forum an:

                    PHP-Code:
                    <?
                    $sql2 = "SELECT * FROM answers WHERE tid=".$row->tid."";
                            $res2 = mysql_query($sql) or die(mysql_error());    // Die Abfrage geht nicht.
                                                                               

                            echo ''.mysql_num_rows($res2).'';
                    ?>
                    Wisst Ihr woran es liegen könnte?
                    Wie gesagt, es kann auch sein dass ich einen Aussetzer habe.


                    Danke!
                    Alex

                    Kommentar


                    • #11
                      du schreibst
                      // Die Abfrage geht nicht.
                      in deinen code rein.

                      das mysql_error() hast du ja nun schon drin.

                      was gibt er denn aus? gibt er nichts aus, funktioniert die abfrage ja...
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        Ja, das habe ich vergessen rauszunehmen, es geht um die Logik solche Sachen abzufragen.Das von eben, was du korrigiert hast , ging ja. Ich meine bloß beim jetzigen Problem, es ist ja unlogisch , wenn ich alle Antworten mit derselben Thread ID abrufe und die Gesamtzahl der Beiträge im Forum erscheint...

                        Kommentar


                        • #13
                          Original geschrieben von chickendeath
                          Ja, das habe ich vergessen rauszunehmen,
                          wieso rausnehmen?

                          das soll drin bleiben, damit du eine meldung bekommst....

                          hast du eine bekommen?
                          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                          Kommentar


                          • #14
                            JA ne, ich meinte den Kommentar

                            Aber wie ist das, ich denke ich habe die irgendwie einen Denkfehler drin. Ich habe glaube ich von der Logik her eine falsche Abfrage definiert...

                            Kommentar


                            • #15
                              dann überlege noch einmal genau, was du machen willst, und was du gemacht hast.. ;-)
                              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                              Kommentar

                              Lädt...
                              X