Daten aus bestimmten Zeitraum auslesen

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

  • Daten aus bestimmten Zeitraum auslesen

    Hi,

    habe hier eine Tabelle mit 4 Feldern. In dieser Tabelle werden Aktivitäten gespeichert

    PHP-Code:
    ID  timestamp                     text        username
    1    2005
    -04-22 12:25:56   login ok  testuser 
    So die Tabelle hat ca 10.000 Einträge, ich würde nun gerne mit nur bestimmte Zeilen anzeigen lassen beispielweise vom 01.04.05 bis 10.04.05.

    Wie bekomme ich das scriptmässig hin? Alles komplett ist keine Problem...

    Hier das Script:

    PHP-Code:
    while ($zeile=mysql_fetch_array($resultMYSQL_ASSOC))
        {
        echo
    '<td>'.$zeile[ID].'</td><td>'.$zeile[ID].'</td><td>'.$zeile[timestamp].'</td>
    <td>'
    .$zeile[text].'</td><td>'.$zeile[username].'</td/<tr>';


        } 
    Ciao
    Zuletzt geändert von FRAD; 28.04.2005, 10:08.

  • #2
    Mit einer entsprechenden Abfrage ist das kein Problem.
    http://dev.mysql.com/doc/mysql/en/da...functions.html hilft dir weiter
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Hi,

      ok, da waürde ich das ganze im Code machen. Wie bekomme ich aber eine Auswahl hin? Ich will die Abfrage flexibel machen ...

      Kommentar


      • #4
        schau dir im SQL-manual mal 'BETWEEN' an
        MfG
        aim
        Lies mich jetzt!
        - OT-Tags-Liebhaber und BB-Code-Einrücker -

        Kommentar


        • #5
          das ist soweit klar. Nur wie kann ich im Frontend sagen zeige mir von ... bis... an.

          ICh möchte dies nicht im code machen, sondern jeder user soll die individuell entscheiden können.

          Kommentar


          • #6
            date und between ... ein wunderschönes Paar
            mein Sport: mein Frühstück: meine Arbeit:

            Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

            Kommentar


            • #7
              in HTML gibt's eine sensationelle technik, die sich "Formular" nennt ...
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                na in dem jemand die beiden daten in ein textfeld eingiebt und du diese variablen der sql-abfrage übergiebst?!
                oder versteh ich da jetz was nich?
                MfG
                aim
                Lies mich jetzt!
                - OT-Tags-Liebhaber und BB-Code-Einrücker -

                Kommentar


                • #9
                  na in dem jemand die beiden daten in ein textfeld eingiebt und du diese variablen der sql-abfrage übergiebst?!
                  Genau das meine ich, da bräuchte ich mal ein Beispiel, stehe da voll auf dem Schlauch.

                  MIt dieser Abfrage bekomme ich es hin:

                  $sql='SELECT * FROM log WHERE timestamp BETWEEN "2005-04-05 08:26:43" AND "2005-04-14 07:45:30"';

                  Wie gesagt, ich will es selbst übder das Frontend eingeben können.

                  Kommentar


                  • #10
                    Code:
                    <form action="suche.php" method="post">
                      Von: <input type="text" name="von" /><br />
                      Bis: <input type="text" name="bis" /><br />
                      <input type="submit" value="Suche" />
                    </form>
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      kannst du mir evtl. noch etwas tiefer erklären.

                      Wie ich solch ein Submit und input feld mache weis ich, nur wie gehe jetzt vor was die sqlabfrage angeht?

                      Kommentar


                      • #12
                        Du willst mir sagen, du weißt nicht, wie du Formulare verarbeitest?

                        http://www.php-faq.de/ch/ch-webvariablen.html lesen!
                        Sofort!
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          Ok was anderes, wie müsste ich die Abfrage machen wenn ich nur die Einträge von gestern und heute mir anzeigen lassen möchte. Das Mit dem Frontend werde ich mir die Tage genauer durchlesen.

                          Es geht jetzt nur um die SQL Abfrage...

                          $sql='SELECT * FROM log WHERE timestamp BETWEEN "2005-04-14 07:45:30" AND "2005-04-14 07:45:30"

                          Kann mir dabei jemand helfen?

                          Kommentar


                          • #14
                            Hi,

                            habe es so gemacht, tut auch...

                            PHP-Code:
                                $formgestern mktime(000date("m")  , date("d")-1date("Y"));
                                
                            $formheute mktime(000date("m")  , date("d")+1date("Y"));
                                
                            $heute date("Y-m-d"$formheute);
                                
                            $gestern date("Y-m-d "$formgestern);

                            $sql='SELECT * FROM log WHERE timestamp BETWEEN "'.$gestern.'" AND "'.$heute.'"'
                            Hoffe es entspricht dem Standard....

                            Ciao

                            Kommentar


                            • #15
                              PHP-Code:
                              $heute   date('Y-m-d H-i-s');
                              $gestern date('Y-m-d H-i-s'strtotime('-1 days'));

                              $sql "SELECT * FROM log WHERE timestamp BETWEEN '$gestern' AND '$heute'"
                              ... falls Du danach suchst...

                              Kommentar

                              Lädt...
                              X