die letzten "five"

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

  • die letzten "five"

    hi,

    ein weiteres problem hat sich mir in den weg gestellt:
    wie bekomme ich die 5 letzten einträge in einer tabelle heraus?
    wobei zu beachten ist, das die fortlaufende nummer aller einträge nicht zwangsläufig lückenlos ist, da einträge auch wieder gelöscht sein können.

    meine tabelle sieht folgendermaßer aus:

    PHP-Code:

       mysql_query
    ($sql,$conn) or die("Fehler bei $sql");
       
    $sql  "CREATE TABLE film";
       
    $sql .= "(custID bigint(21) NOT NULL auto_increment,";
       
    $sql .= "name varchar(100), ";
       
    $sql .= "art varchar(250), ";
       
    $sql .= "text varchar(250), ";
       
    $sql .= "PRIMARY KEY(custID)";
       
    $sql .= ")";
       
    mysql_query($sql,$conn) or die("Fehler bei $sql"); 
    nun möchte ich die letzten 5 filme die in die tabelle eingetragen wurden gerne ausgeben. aber wie kann ich das machen, wenn custID nicht forlaufend ist?

  • #2
    Re: die letzten "five"

    Original geschrieben von cyberbob
    PHP-Code:

       mysql_query
    ($sql,$conn) or die("Fehler bei $sql");
       
    $sql  "SELECT * FROM tabel ORDER BY spalte_id LIMIT 0,5 DESC";// Neu
       
    mysql_query($sql,$conn) or die("Fehler bei $sql"); 
    Zuletzt geändert von Wotan; 21.08.2002, 11:58.
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

    Kommentar


    • #3
      ähmmm...

      ...neeee...da hast du etwas falsch verstanden!
      der php-code zeigt nur den aufbau meiner tabelle.

      auf einer php seite möchte ich gerne die tabelle nach den 5 neuesten einträgen also den 5 letzten einträgen durchsuchen und diese dann zeigen.

      gruß sven

      Kommentar


      • #4
        Macht es doch. Schau dir die $sql an.
        *winks*
        Gilbert
        ------------------------------------------------
        Hilfe für eine Vielzahl von Problemen!!!
        http://www.1st-rootserver.de/

        Kommentar


        • #5
          Ist doch im Grunde richtig!

          LIMIT 0,5

          Aber sollte Order By nicht die Cust_id haben? Ich denke mal das meinst du (Wotan) mit spalte_id.

          ORDER BY custID


          Sollte alles in allen wie folgt heißen! Sind auch deine Namen drin:

          PHP-Code:
          SELECT 
          FROM film
          ORDER BY custID
          LIMIT 0
          ,5 DESC 

          Kommentar


          • #6
            @TobiaZ

            Ich lese mir nur die fragen durch und geben dann die antworten ohne auf eigene Namen für Spalten und Tabellen zuachten.

            @cyberbob
            Wie TobiaZ es jetzt geschrieben hat meinte ich es. Eben nur ohne deine Tabellennamen und Spaltennamen einzusetzten.
            *winks*
            Gilbert
            ------------------------------------------------
            Hilfe für eine Vielzahl von Problemen!!!
            http://www.1st-rootserver.de/

            Kommentar


            • #7
              okay, habs schon erkannt. Der Tabellenname war ja auch nicht gegeben. Ich geb ja normalerweise auch nur Musterlösungen. Stärkt den Grips der anderen!

              Kommentar


              • #8
                hmmm...

                ...irgendwo scheine ich aber noch immer einen denkfehler zu haben.

                mein php-code sieht so aus:


                PHP-Code:

                //
                // LETZTEN 5
                //

                <table width="700" border="0" cellspacing="2" cellpadding="5">
                <tr>
                <?

                        $sql = "SELECT * FROM film ORDER BY custID LIMIT 0,5 DESC";
                        $result = mysql_query($sql, $conn);
                        while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
                ?>
                        <td><? echo $row[1] ?></td>
                         <td><? echo $row[2] ?></td>
                         <td><? echo $row[3] ?></td>
                <?

                        }
                ?>
                </tr>
                </table>
                ..und folgende fehlermeldung kommt dabei heraus:

                Warning: Supplied argument is not a valid MySQL result resource in /multi/index.php on line 321

                Kommentar


                • #9
                  Auch wenn ich noch nie mit MYSQL_NUM gearbeitet habe, gehe ich davon aus, dass das richtig ist. Ist wohl wie ASSOC?

                  mach mal bitte

                  while($row = mysql_fetch_assoc($result)) {

                  Kommentar


                  • #10
                    PS: Kann das sein, dass du ein bisschen umständlich programmierst?

                    Man sollte nicht zu oft zwischen PHP und HTML wechseln. Vorallem nicht, wenn es so sinnlos ist wie bei dir!

                    Kommentar


                    • #11
                      leider noch immer die gleiche fehlermeldung!

                      muß einen anderen grund haben

                      Kommentar


                      • #12
                        gib mir einen tipp, wie es einfacher und besser geht!

                        gruß sven

                        Kommentar


                        • #13
                          Sicher, dass alle Datenfelder, die du ansprichst auch vorhanden sind? und die Tabelle. Das kann eigentlich der einzige grund sein.

                          Kommentar


                          • #14
                            Poste nochmal den Code, den du hast!

                            Das hier
                            PHP-Code:
                            ?>
                                    <td><? echo $row[1] ?></td>
                                     <td><? echo $row[2] ?></td>
                                     <td><? echo $row[3] ?></td>
                            <?
                            formst du mal in das hier um:
                            PHP-Code:
                            echo "<td>$row[1]</td>
                            <td>
                            $row[2]</td>
                            <td>
                            $row[3]</td>"

                            Kommentar


                            • #15
                              folgende abfrage funzt ohne probleme:

                              PHP-Code:

                              $sql = "SELECT * FROM film ";
                                  $result = mysql_query($sql, $conn);
                                  while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
                                      ?>
                                  <td><a href="index.php?typ=film&detail=yes&custID=<? echo $row[0] ?>"><img src="range_in.gif" border="0"></a></td>
                                  <td><? echo $row[1] ?></td>
                                  <td><? echo $row[2] ?></td>
                                  <td><? echo $row[7] ?></td>
                              verstehe auch nicht, warum es jetzt nicht geht...bestimmt irgendwo etwas übersehen!

                              Kommentar

                              Lädt...
                              X