tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
JA
ANTWORTEN
28
ZUGRIFFE
842
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Svenja_Berlin Svenja_Berlin ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    98
    Guten Morgen,

    hmm komme mal wieder an einem Punkt nicht so ganz weiter wie ich gerne wollte. Also mein Problem ist. Ich habe in einer Datenbank Termine stehen. Wie meine DB aussieht dass zeige ich gleich.

    Da wurde ich jetzt gerne folgendes machen. Es handelt sich um Film Termine das heißt es soll eine Vorschau sein, welche FIlme immer die nächsten Wochen im Kino kommen. Dazu lass ich die Termine wie folgt auslesen:

    PHP-Code:
         $kino_vorschau = "SELECT
                       id,
                       name,
                       datum,
                       titel,
                       wann_kommt_der_film
                       FROM
                       kino_vorschau
                        ";
                        $return = mysql_query($kino_vorschau) OR die(mysql_error());
                        ?>
       <?php
    So nun werden aber einfach alle Termine ausgelsen und das will ich ja eben gerade nicht. Es sollen immer nur die Termine da stehen von den nächsten 2 Wochen Sprich 14 Tage.

    Die Kinowoche fängt aber nicht am Sonntag an sondern immer am Donnerstag. Die Termine werde so in der DB gespeichert:

    wann_kommt_der_film : 31.03.2005

    jetzt z.B. mache ich mal bei Beispiel wie es in der nächsten Woche aussehen sollte also ab Morgen bze. ab heute Nacht 00.00 Uhr:

    wann_kommt_der_film : 07.04.2005
    wann_kommt_der_film : 07.04.2005
    wann_kommt_der_film : 07.04.2005
    wann_kommt_der_film : 14.04.2005
    wann_kommt_der_film : 14.04.2005
    wann_kommt_der_film : 14.04.2005

    So das war eben mal ein kileines Beispiel. Also immer einfach die nächsten Zwei wochen ausgeben lassen.

    Hmm und genau da komme ich einfach nicht weiter.

    So sieht meine Tabelle in der DB aus:

    CREATE TABLE `kino_vorschau` (
    `id` int(6) NOT NULL auto_increment,
    `name` varchar(30) NOT NULL default '',
    `datum` datetime NOT NULL default '0000-00-00 00:00:00',
    `titel` varchar(200) NOT NULL default '',
    `wann_kommt_der_film` varchar(200) NOT NULL default '',
    PRIMARY KEY (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=18 ;

    Ich hoffe mal, dass Ihr mir bei dem Problem helfen könnt.

    Gruß Svenja
     

  2. #2
    Avatar von forsterm
    forsterm forsterm ist offline Mitglied Rubin
    Registriert seit
    Nov 2004
    Ort
    Bayern
    Beiträge
    1.328
    Hallo,

    mit dem Befehl LIMIT kannst du bestimmen wie viele Einträge ausgegeben werden sollen.
    Musst halt mal hier im Forum oder bei Google suchen.

    EDIT:

    Das könnte dir auch nocht helfen. http://www.tutorials.de/tutorials188...mit#post978394
    Geändert von forsterm (09.04.05 um 13:11 Uhr)
     
    Wie man Fragen richtig stellt

    Wichtig:
    Bitte markiert eure beantworteten Fragen als "erledigt" (links unten auf "Erledigt" klicken).
    __________________
    .:Mitglied #26 des 1. offiziellen Sven Uwe Fan-Clubs:.

  3. #3
    Svenja_Berlin Svenja_Berlin ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    98
    Hallo,

    das ist mir schon klar dass ich mit dem Befehl Limit eine bestimmte Anzalh an Datensätzten auslesen kann. Aber das bringt ja nichts von mir denn wenn z.B. ein Termine vorei ist dann bleibt er ja dennoch in der DB stehen und mit dem Limit Befehl hätte ich dann immer die gleichen Daten stehen weil er ja immer nur die 10 Datensätze z.B. holt. Das ist ja nicht das was ich will

    Gruß Svenja
     

  4. #4
    Avatar von forsterm
    forsterm forsterm ist offline Mitglied Rubin
    Registriert seit
    Nov 2004
    Ort
    Bayern
    Beiträge
    1.328
    Hallo,

    du könntest es ja auch so machen, das du in dein Script, welches die Termine aussgibt ein bevor es die Termine aus gibt die, die schon vorbei sind einfach löscht z.B. so

    PHP-Code:
    $aktuell=date("Y-m-d",time())
    DELETE FROM kino_vorschau WHERE datum $aktuell 
    Geändert von forsterm (09.04.05 um 13:11 Uhr)
     
    Wie man Fragen richtig stellt

    Wichtig:
    Bitte markiert eure beantworteten Fragen als "erledigt" (links unten auf "Erledigt" klicken).
    __________________
    .:Mitglied #26 des 1. offiziellen Sven Uwe Fan-Clubs:.

  5. #5
    Svenja_Berlin Svenja_Berlin ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    98
    Hallo,

    nöö warum sollte ich die denn aus der DB löschen? Es muss doch auch eine andere Möglichkeit geben dass zu machen. Denn ich brauch die Termine eigentlich noch.

    Gruß Svenja
     

  6. #6
    Avatar von forsterm
    forsterm forsterm ist offline Mitglied Rubin
    Registriert seit
    Nov 2004
    Ort
    Bayern
    Beiträge
    1.328
    Hallo,

    du könntest einfach die letzten 14 Einträge auslesen ungefähr so.
    Geändert von forsterm (09.04.05 um 13:12 Uhr)
     
    Wie man Fragen richtig stellt

    Wichtig:
    Bitte markiert eure beantworteten Fragen als "erledigt" (links unten auf "Erledigt" klicken).
    __________________
    .:Mitglied #26 des 1. offiziellen Sven Uwe Fan-Clubs:.

  7. #7
    Avatar von Dennis Wronka
    Dennis Wronka Dennis Wronka ist offline Soulcollector
    Registriert seit
    Apr 2002
    Ort
    Hong Kong
    Beiträge
    12.296
    Blog-Einträge
    231
    Zitat Zitat von forsterm
    PHP-Code:
    WHERE datum $aktuell 
    Das wird bei dem Format das Svenja zum Speichern des Datums genutzt hat nicht viel bringen.
    Um ein Datum so zu vergleichen sollte das Datum als YMD und nicht als DMY gespeichert werden.
     
    PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
    Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
    __________________
    EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
    EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
    __________________
    Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
    __________________
    Zitat Zitat von Friedrich Nietzsche
    Man muss noch Chaos in sich haben, um einen tanzenden Stern gebaeren zu koennen.

  8. #8
    Svenja_Berlin Svenja_Berlin ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    98
    Zitat Zitat von forsterm
    Hallo,

    du könntest einfach die letzten 14 Einträge auslesen ungefähr so.
    Hallo,

    ich will doch nicht die letzten drei Einträge auslesen lassen. Kann das sein dass du gar nicht verstehst was ich meine?
     

  9. #9
    German German ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Ort
    (Bayern)
    Beiträge
    464
    PHP-Code:
         $kino_vorschau = "SELECT
                      id,
                      name,
                      DATE_FORMAT(datum, '%d.%m.%Y') AS datum,
                      titel,
                      wann_kommt_der_film
                      FROM
                      kino_vorschau
                      WHERE
                      wann_kommt_der_film >= now()
                      AND
                      wann_kommt_der_film <= DATE_ADD(now(), INTERVAL 14 DAY) 
                        ";
                        $return = mysql_query($kino_vorschau) OR die(mysql_error());
                        ?>
       <?php
    Sollte so funktionieren, wenn es Dich stört dass bei einer Abfrage um 20:00 die Filme am 13.04. nur bis 20:00 angezeigt werden müsstest Du das datetime in ein date und ein time aufteilen.
     
    Gruß German

  10. #10
    Svenja_Berlin Svenja_Berlin ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    98
    @German;

    danke für deine Hilfe. Aber wenn ich das so mache wie du es mirgerade geschrieben hast, dann kommt gar nichts mehr, sprich er liest keine Daten mehr aus

    Gruß Svenja
     

  11. #11
    Registriert seit
    Oct 2003
    Ort
    Berlin
    Beiträge
    1.423
    Versuch einfach mal das Datum als Timepstamp in der DB zu speichern, dann kannst du auch ordentlich damit Arbeiten!
     

  12. #12
    Svenja_Berlin Svenja_Berlin ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    98
    Hallo BSA

    wie soll ich das Datum denn als Timestamp speichern, das habe ich bnis jetzt noch nie geamcht.

    Gruß Svneja
     

  13. #13
    German German ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Ort
    (Bayern)
    Beiträge
    464
    Zitat Zitat von Svenja_Berlin
    Aber wenn ich das so mache wie du es mirgerade geschrieben hast, dann kommt gar nichts mehr
    Sorry, hab übersehen, dass das wann_kommt_der_film ein anderes Format wie datum hat.
    Kannst Du nicht danach abfragen?
    PHP-Code:
     $kino_vorschau "SELECT
                      id,
                      name,
                      wann_kommt_der_film, 
                      titel
                      FROM
                      kino_vorschau
                      WHERE
                      datum >= now()
                      AND
                      datum <= DATE_ADD(now(), INTERVAL 14 DAY)
                       "

    Geändert von German (30.03.05 um 13:02 Uhr)
     
    Gruß German

  14. #14
    Svenja_Berlin Svenja_Berlin ist offline Mitglied Silber
    Registriert seit
    Feb 2005
    Beiträge
    98
    Hallo German,

    hmm nee auch wenn ich das so mache wie du das nun geschrieben hast kommt nichts. Er liest einfach keine Daten aus.

    Wie meinst du das, ob ich das nicht so machen kann?

    Gruß Svenja
     

  15. #15
    German German ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Ort
    (Bayern)
    Beiträge
    464
    Naja, steht in datum der gleiche Tag wie in wann_kommt_der_film?
    Denn die datum-Spalte hat das richtige Format um solche Abfragen zu machen.
    Unser deutsches Datumsformat hat in einer Datenbank eigentlich nichts verloren eben weil es sich zum Rechnen und Sortieren absolut nicht eignet ...
    ... aber das hatten wir hier ja schon das eine oder andere mal ...
     
    Gruß German

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 15.10.07, 16:56
  2. Antworten: 8
    Letzter Beitrag: 25.07.06, 18:53
  3. Antworten: 3
    Letzter Beitrag: 01.04.05, 15:48
  4. Mysql - Abfrage nach einem bestimmten Datum oder Range?
    Von Deletemaster im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 16.02.05, 22:33
  5. Datei nach einem bestimmten Schema auslesen
    Von dark_mascot im Forum Visual Basic 6.0
    Antworten: 4
    Letzter Beitrag: 03.02.05, 14:17