letzer Eintrag zuerst

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

  • letzer Eintrag zuerst

    Hey Ihr,

    1) Wie kann ich eine Abfrage an die Datenbank stellen um das ich den letzer Eintrag zuerst bekomme?
    2) Wie geht das mit dem Limit(Anzeige pro Seite)?
    3) Und wie kann ich die Gesamtanzahl aller Datensätze anzeigen?

    cu
    Gilbert
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    1) Wie kann ich eine Abfrage an die Datenbank stellen um das ich den letzer Eintrag zuerst bekomme?
    order by ASC|DESC
    2) Wie geht das mit dem Limit(Anzeige pro Seite)?
    http://www.php-resource.de/sourcecod...moBrowsDB.php3
    3) Und wie kann ich die Gesamtanzahl aller Datensätze anzeigen?
    mysql_num_rows


    gruss
    berni

    php-Entwicklung | ebiz-consult.de
    PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
    die PHP Marktplatz-Software | ebiz-trader.de

    Kommentar


    • #3
      order by ASC|DESC
      Einfach nur order by ASC|DESC?
      http://www.php-resource.de/sourcecod...moBrowsDB.php3
      Schon das Script möchte aber eigentlich nur unten am Seiten Rand folgendes haben. Auf der ersten Seite nur ein "Weiter", Auf der Letzten Seite "Zurück" und dazwischen auf den Seiten "Weiter und Zurück".
      mysql_num_rows
      ist das Ergebnis daraus $i?
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        hmm,

        also
        ORDER BY spalte ASC||DESC

        musst ja schon angeben nach was er sortieren soll.

        $i = mysql_num_rows($result);

        dann hast du die Anzahl in der Variable $i.

        das mit dem weiter und zurück ist so trivial nicht, also ich übergebe immer eine variable $seite, musst du auch, naja und wenn $seite = 1 ist dann ist der Anfang erreicht naja und wenn ($seite+1)*einträgeproseite > $i ist dann ist das Ende erreicht, also gibt es kein weiter mehr.

        Kommentar


        • #5
          Order by war schon klar und $i war auch soweit klar. Nur habe ich noch das Verständnisproblem mit den Seiten.

          Ich möchte pro Seite fünf Einträge anzeigen, wenn mehr als fünf Einträge in der Datenbank sind sollen die weiteren Einträge über den link Weiter(Zurück) angezeigt werden. Nur weiß ich nicht wie ich das Scripten muß.
          *winks*
          Gilbert
          ------------------------------------------------
          Hilfe für eine Vielzahl von Problemen!!!
          http://www.1st-rootserver.de/

          Kommentar


          • #6
            hmm,

            also, ist eigentlich einfach

            du hast sagen wir mal 7 Beiträge.

            und du bist auf seite eins

            $i = 7
            $seite = 1
            $max = 5
            dann errechnest du

            $i/$max = 1.4
            das ist > $seite also gibt es mindestens eine folgeseite also musst du einen link machen weiter, so und nun noch die kontrolle ob $seite > 1 ist, dann bräuchtest du auch ein zurück, was hier aber nicht erforderlich ist. Naja und jetzt brauchst du noch die Nummern des Start- und Endbeitrags. die errechnest du so
            $start = (($seite-1)*$max)+1 = 1
            $ende = $start+$max-1 = 5
            jetzt musst du noch überprüfen ob $ende > $i ist um zu sehen ob du eventuell auf der letzten Seite bist und damit du dort keine Geistereinträge anzeigen willst.

            if ($ende > $i) { $end = $i; }

            naja und nun gibst du den Kram aus.

            Kommentar


            • #7
              ich glaube der link kann dir helfen:

              http://www.php-resource.de/forum/sho...?threadid=2331
              h.a.n.d.
              Schmalle

              http://impressed.by
              http://blog.schmalenberger.it



              Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
              ... nur ohne :-)

              Kommentar


              • #8
                verstehe nur Bahnhof?!?!?!?!?!

                Wie mach ich das jetzt mit dem Weiter und Zurück link unten auf den Seiten?
                *winks*
                Gilbert
                ------------------------------------------------
                Hilfe für eine Vielzahl von Problemen!!!
                http://www.1st-rootserver.de/

                Kommentar


                • #9
                  naja du hast dei Script welches auf die Variable $seite reagiert und entsprechend dieser Variable die entsprechenden Beiträge aus der DB abruft. Und die links sind dann einfach
                  Code:
                  echo"<a href=\"anzeige.php?seite=".($seite-1)."\">vorherige seite</a>";
                  echo"< hraf=\"anzeige.php?seite=".($seite+1)."\">nächste Seite</a>";
                  oder verstehe ich dich gerade nicht ?

                  Kommentar


                  • #10
                    Kannst du mir das mal Komplett scripten?
                    *winks*
                    Gilbert
                    ------------------------------------------------
                    Hilfe für eine Vielzahl von Problemen!!!
                    http://www.1st-rootserver.de/

                    Kommentar


                    • #11
                      ich kann mir nicht helfen, aber bei dem link ist ein komplettes script ....
                      h.a.n.d.
                      Schmalle

                      http://impressed.by
                      http://blog.schmalenberger.it



                      Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                      ... nur ohne :-)

                      Kommentar


                      • #12
                        Dazu müßte ich das Script Verstehen, Schmalle
                        *winks*
                        Gilbert
                        ------------------------------------------------
                        Hilfe für eine Vielzahl von Problemen!!!
                        http://www.1st-rootserver.de/

                        Kommentar


                        • #13
                          was verstehst du denn nicht?
                          h.a.n.d.
                          Schmalle

                          http://impressed.by
                          http://blog.schmalenberger.it



                          Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                          ... nur ohne :-)

                          Kommentar


                          • #14
                            Was ich nicht verstehe, ist der Aufbau des Scripts.

                            Wie ermittle ich die Gesamtzahl der Datensätze?

                            Wie bilde ich aus den Ergebnis die Vor und Zurück Links?

                            Und auf welche Seite muß ich den Link legen das die weiter Datensätze angezeigt werden?

                            Meine Variablen von der Abfrage sind folgende:
                            Code:
                            $db = mysql_connect("$MySQL_Host","$MySQL_User","$MySQL_Passw") or die (mysql_error()); 
                            mysql_select_db("$MySQL_Data"); 
                            $res = mysql_query("SELECT * FROM gbuch order by gbuch_id DESC") or die (mysql_error()); 
                            
                            if ($num = mysql_num_rows($res)) 
                            
                            { 
                            for ($i=0; $i<$num; $i++) 
                            { 
                            $g1_datum    = mysql_result($res, $i, "datum");
                            $g_datum     = stripslashes($g1_datum);
                            $g1_name     = mysql_result($res, $i, "name");
                            $g_name      = stripslashes($g1_name); 
                            $g1_mail     = mysql_result($res, $i, "mail"); 
                            $g_mail      = stripslashes($g1_mail);
                            $g1_web      = mysql_result($res, $i, "web"); 
                            $g_web       = stripslashes($g1_web);
                            $g1_eintrag  = mysql_result($res, $i, "eintrag"); 
                            $g_eintrag   = stripslashes($g1_eintrag);
                            $g1_wert     = mysql_result($res, $i, "bewertung"); 
                            $g_wert      = stripslashes($g1_wert);
                            $g1_komm     = mysql_result($res, $i, "kommentar"); 
                            $g_komm      = stripslashes($g1_komm);
                            $g1_kommname = mysql_result($res, $i, "k_name"); 
                            $g_kommname  = stripslashes($g1_kommname);
                            $g1_kommmail = mysql_result($res, $i, "k_mail");
                            $g_kommmail  = stripslashes($g1_kommmail);
                            Ich hoffe du kannst mir das verständlich machen.
                            Ich will pro Seite 10 Einträge anzeigen und zwar den Letzten Datensatz zuerst.
                            Meine Links möchte ich so gestallten:
                            Code:
                            <a href='gbuch.anzeigen.php'>Zurück</a> || <a href='gbuch.anzeigen.php'>Weiter</a>
                            *winks*
                            Gilbert
                            ------------------------------------------------
                            Hilfe für eine Vielzahl von Problemen!!!
                            http://www.1st-rootserver.de/

                            Kommentar


                            • #15
                              Habe mein Script jetzt so geändert:

                              Code:
                              $db = mysql_connect("$MySQL_Host","$MySQL_User","$MySQL_Passw") or die (mysql_error()); 
                              mysql_select_db("$MySQL_Data"); 
                              
                              $Select="SELECT * FROM gbuch order by gbuch_id DESC";
                              
                              $MaxRow=3;
                              if (!isset($CR))
                               {
                                          $result = mysql_query($Select) or die ("Datenbankfehler1! versuchen Sie es erneut");
                                          $row=mysql_fetch_row($result);
                                          $CR=$row[0];
                                          $RL=0;
                               }
                              
                              $AnzahlSeiten=intval($CR/$MaxRow);
                              if ($AnzahlSeiten < ($CR/$MaxRow))
                               {
                                          $AnzahlSeiten++;
                               }
                              
                              
                               $text="<BR>Seite :";
                              // check for Prevbutton
                              if   ($RL > 0)
                               {
                                          $y=$RL-$MaxRow;
                                          $Button.= "<a href=\"gbuch.anzeigen.php?CR=$CR&RL=$y\">Zurück</a> ";
                               }
                              
                              
                              for ($i = 1; $i <= $AnzahlSeiten; $i++)
                                {   $y=($i*$MaxRow)-$MaxRow;
                                   if ($y==$RL){$Button.="<B>";}
                              
                                   $Button.="[<a href=\"gbuch.anzeigen.php?CR=$CR&RL=$y\">$i</a>] ";
                                    if ($y==$RL){$Button.= "</B>";}
                                }
                              
                               // check for Nextbutton
                              if   ($RL < ($CR-$MaxRow)) {
                              $y=$RL+$MaxRow;
                              $Button.="<a href=\"gbuch.anzeigen.php?CR=$CR&RL=$y\">Weiter</a> ";
                              }
                              
                              // $res = mysql_query("SELECT * FROM gbuch order by gbuch_id DESC") or die (mysql_error()); 
                              for ($i=0; $i<$num; $i++)
                              
                              $num = mysql_num_rows($res); 
                              
                              { 
                              $g1_datum    = mysql_result($res, $i, "datum");
                              $g_datum     = stripslashes($g1_datum);
                              $g1_name     = mysql_result($res, $i, "name");
                              $g_name      = stripslashes($g1_name); 
                              $g1_mail     = mysql_result($res, $i, "mail"); 
                              $g_mail      = stripslashes($g1_mail);
                              $g1_web      = mysql_result($res, $i, "web"); 
                              $g_web       = stripslashes($g1_web);
                              $g1_eintrag  = mysql_result($res, $i, "eintrag"); 
                              $g_eintrag   = stripslashes($g1_eintrag);
                              $g1_wert     = mysql_result($res, $i, "bewertung"); 
                              $g_wert      = stripslashes($g1_wert);
                              $g1_komm     = mysql_result($res, $i, "kommentar"); 
                              $g_komm      = stripslashes($g1_komm);
                              $g1_kommname = mysql_result($res, $i, "k_name"); 
                              $g_kommname  = stripslashes($g1_kommname);
                              $g1_kommmail = mysql_result($res, $i, "k_mail");
                              $g_kommmail  = stripslashes($g1_kommmail);
                              
                              print "<p align='center'>";
                              print "<CENTER>";
                              print "<TABLE cellSpacing='1' cellPadding='2' width='90%' border='0'>";
                              print "<tr><TR><TD width='80%' bgColor='ffce9d'>";
                              print "<TABLE cellSpacing='1' cellPadding='0' width='100%' border='0'>";
                              print "<TR><TD align='left'><FONT face='Comic Sans MS' color='#000000' size='1'><B>Am $g_datum schrieb $g_name</B>";
                              print "  ";
                              if ($g_mail!=NULL)print "<A href='mailto:$g_mail'><IMG alt='$g_name' src='images/email.gif' border='0'></A>";
                              
                              print "  ";
                              if ($g_web!=NULL)print "<a href='$g_web' target='_blank'><img src='images/home.gif' border='0'></a>";
                              
                              print "</B></FONT></TD>";
                              print "<TD align=right><FONT face='Comic Sans MS' size='1' color='#000000'>Bewertung:  </FONT><IMG src='$g_wert' border='0'></TD></TR>";
                              print "</TABLE>";
                              print "</TD><TR>";
                              print "<TD width='50%' bgColor='#cccccc'><FONT face='Comic Sans MS' color='#000000' size='2'>$g_eintrag</FONT></TD></TR>";
                              print "<td width='50%' bgColor='#cccccc'><font face='Comic Sans MS' color='#000000' size='2'>";
                              if ($g_kommname!=NULL)print "Kommentar von $g_kommname ";
                              if ($g_kommmail!=NULL)print "<a href='mailto:$g_kommmail'><img src='images/email.gif' border='0'></a><br><br>";
                              if ($g_komm!=NULL)print "$g_komm";
                              print "</TABLE></CENTER>";
                              print "<BR><BR>";
                              }
                              
                              print "<p align='center'>$Button</p>";
                              
                              mysql_close($db);
                              Es zeigt mir zwar die Links an aber es zeigt mir auf beiden Seiten nur den ersten Datensatz in der Datenbank an. Ich habe aber 5 Datensätze in der Datenbank.

                              Beim ersten Aufruf zeigt er mir folgende Links an:

                              [1] [2] Weiter

                              Auf der Zweiten Seite zeigt er mir das an:

                              Zurück [1] [2]

                              Wo ist der Fehler???? Wer kann helfen, Bitttttttttte!!!!
                              *winks*
                              Gilbert
                              ------------------------------------------------
                              Hilfe für eine Vielzahl von Problemen!!!
                              http://www.1st-rootserver.de/

                              Kommentar

                              Lädt...
                              X