jaylibII: Wo liegt der Fehler?

Hallo,

ich mach gerade an meiner Seite was und zwar, dass nach jedem Seitenaufruf etwas neues aus der DB geladen wird.

So sieht mein Code aus:

<?php $sql = "SELECT
ueberschrift,
text

FROM
Test
WHERE anfang < '.time().' AND '.time().' < ende O
ORDER BY RAND() LIMIT 1
";
$return = mysql_query($sql) OR die(mysql_error());
while($_data = mysql_fetch_assoc($return))
?>

So rufe ich dann die Daten ab:

<?php echo $_data['ueberschrift']; ?>

Zu guter letzt noch die Tabelle in der Datenbank:

CREATE TABLE Test (
  id int(6) NOT NULL auto_increment,
  ueberschrift varchar(200) NOT NULL default '',
  text varchar(200) NOT NULL default '',
  telefon varchar(200) NOT NULL default '',
  fax varchar(200) NOT NULL default '',
  url varchar(200) NOT NULL default '',
  location varchar(200) NOT NULL default '',
  verbindung varchar(200) NOT NULL default '',
  anfang timestamp(14) NOT NULL,
  ende timestamp(14) NOT NULL default '00000000000000',
  name varchar(30) NOT NULL default '',
  datum datetime NOT NULL default '0000-00-00 00:00:00',
  PRIMARY KEY  (id)
) TYPE=MyISAM AUTO_INCREMENT=3 ;

Hmm kann mir da jemand sagen, was ich da falsch gemacht habe? Oder wo liegt der Fehler?

Gruß jaylibII

  1. Hi,

    Hmm kann mir da jemand sagen, was ich da falsch gemacht habe?

    ohne Fehlerbeschreibung? Kaum.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo,

      ohne Fehlerbeschreibung? Kaum.

      Ups Sorry hab ich ganz vergessen. Wenn ich das nun so einbaue wie ich das gerade geschrieben habe, dann passiert einfach NICHTS. Es kommt keine Fehlermeldung aber es kommt auch kein Inhalt :-(

      Gruß jaylibII

      1. Hi,

        Ups Sorry hab ich ganz vergessen. Wenn ich das nun so einbaue wie ich das gerade geschrieben habe, dann passiert einfach NICHTS. Es kommt keine Fehlermeldung aber es kommt auch kein Inhalt :-(

        was hat Deine Analyse ergeben? Zu einer Fehlerbeschreibung gehört mehr als nur eine eventuelle Fehlermeldung.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hi,

          was hat Deine Analyse ergeben? Zu einer Fehlerbeschreibung gehört mehr als nur eine eventuelle Fehlermeldung.

          ja wenn ich das wüsste, dann hätte ich hier ja nicht gefragt oder?

          Gruß jaylibII

          1. Hi,

            was hat Deine Analyse ergeben? Zu einer Fehlerbeschreibung gehört mehr als nur eine eventuelle Fehlermeldung.
            ja wenn ich das wüsste, dann hätte ich hier ja nicht gefragt oder?

            eine Analyse kannst nur Du alleine vornehmen, niemand sonst. Sie ist für eine Fehlersuche unumgänglich. Ohne sie hängt es vom puren Zufall ab, ob Dir jemand helfen kann.

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
            1. 你好 Cheatah,

              wenn du keinen Bock hast zu helfen oder nicht weisst, was das Problem
              ist, dann halts doch einfach wie Nuhr.

              再见,
              克里斯蒂安

              --
              89,7% aller Statistiken sind frei erfunden!
              1. Hi Christian,

                wenn du keinen Bock hast zu helfen oder nicht weisst, was das Problem
                ist, dann halts doch einfach wie Nuhr.

                von Dir hätte ich eine so unqualifizierte, sinnfreie und realitätsverweigernde Bemerkung am wenigsten erwartet. Hast Du Deine Tage oder sowas?

                Cheatah

                --
                X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
                X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
                X-Will-Answer-Email: No
                X-Please-Search-Archive-First: Absolutely Yes
            2. Hallo,

              eine Analyse kannst nur Du alleine vornehmen, niemand sonst. Sie ist für eine Fehlersuche unumgänglich. Ohne sie hängt es vom puren Zufall ab, ob Dir jemand helfen kann.

              ja was soll ich denn da sagen? Wenn ich wüsste wo der Fehler leigt dann könnte ich das selber, dann müsste ich hier nicht das alles schreiben.

              Aber ich habe eine andere Vermutung, dass du das selber nicht ganz weißt und einfach was schreiben willst kann das sein?

              Gruß jaylibII

          2. Hallo,

            was hat Deine Analyse ergeben? Zu einer Fehlerbeschreibung gehört mehr als nur eine eventuelle Fehlermeldung.
            ja wenn ich das wüsste, dann hätte ich hier ja nicht gefragt oder?

            Kleiner Tipp:
            Das wovon abhängt, ob Resutate kommen oder nicht, ist die SQL-Query. Lass Dir die mal ausgeben, bevor Du sie mit mysql_query an MySQL absendest und vergleiche, ob da wirklich das herauskommt, was Du erwartest.

            viele Grüße

            Axel

  2. 你好 jaylibII,

    [...]
    WHERE anfang < '.time().' AND '.time().' < ende O
    [...]
      anfang timestamp(14) NOT NULL,
      ende timestamp(14) NOT NULL default '00000000000000',
      name varchar(30) NOT NULL default '',
      datum datetime NOT NULL default '0000-00-00 00:00:00',
    [...]

    Du verwendest hier einen MySQL-internen Datentyp fuer anfang, ende
    und datum lieferst aber die Daten nicht im richtigen Format. time()
    liefert die Sekunden seit 1970, MySQL erwartet aber eine
    Datums-Angabe im internen Format. Wenn du zwingende Gruende hast,
    warum du time() verwenden willst, brauchst du FROM_UNIXTIME() um
    den Unix-Timestamp in das richtige Format zu bringen. Wenn du
    time() nur eingesetzt hast, weil du es nicht besser wusstest, kannst
    du das besser mit der MySQL-Funtkion NOW() machen, die das aktuelle
    Datum im MySQL-internen Format zurueck gibt. Das koennte dann z. B.
    so aussehen:

      
    SELECT  
      ueberschrift, text  
    FROM  
      Test  
    WHERE  
      anfang < NOW() AND NOW() < ende  
     ORDER BY RAND()  
     LIMIT 1  
    
    

    HTH.

    再见,
    克里斯蒂安

    --
    89,7% aller Statistiken sind frei erfunden!
    1. Hallo Christian Kruse

      Du verwendest hier einen MySQL-internen Datentyp fuer anfang, ende
      und datum lieferst aber die Daten nicht im richtigen Format. time()
      liefert die Sekunden seit 1970, MySQL erwartet aber eine
      Datums-Angabe im internen Format. Wenn du zwingende Gruende hast,
      warum du time() verwenden willst, brauchst du FROM_UNIXTIME() um
      den Unix-Timestamp in das richtige Format zu bringen. Wenn du
      time() nur eingesetzt hast, weil du es nicht besser wusstest, kannst
      du das besser mit der MySQL-Funtkion NOW() machen, die das aktuelle
      Datum im MySQL-internen Format zurueck gibt. Das koennte dann z.

      hmm nee du ich habe keine zwingende  Grümnde warum ich das via Timestamp machen sollte. Hab das nur gelsen und dachte OK so mache ich das dann auch.

      Diue Funktion NOW() die fügt doch das Aktuelle Datum in die DB ein das heißt also das Feld muss Date heißen gelle? Aber wie mach ich das dann bei dem Feld ENDE da muss ja auch ein Datum rein. Das kann ich ja nicht mit Now() machen oder? Und wie mache ich das wenn ich das Datum nicht von jetzt haben will sondern vom 25.10.2005 da kann ich ja auch nicht Now() verwnden also beim eintragen der Daten oder? verstehst du was ich meine?

      SELECT
        ueberschrift, text
      FROM
        Test
      WHERE
        anfang < NOW() AND NOW() < ende
      ORDER BY RAND()
      LIMIT 1

        
      hmm werde das so gleich mal versuchen. Dank dir.  
        
      
      > HTH.  
        
      was soll das denn heißen?  
        
      Gruß jaylibII
      
      1. jaylibII,

        HTH.
        was soll das denn heißen?

        http://de.wikipedia.org/wiki/HTH HTH.
        Gunnar

        --
        I never intended HTML source code (the stuff with the angle brackets) to be seen by users. […] To my surprise, people quickly became familiar with the tags and started writing their own HTML documents directly. (Tim Berners-Lee in Weaving the Web)
  3. Hallo jaylibII,

    <?php $sql = "SELECT

    ueberschrift,
    text

    FROM
    Test
    WHERE anfang < '.time().' AND '.time().' < ende O
    ORDER BY RAND() LIMIT 1
    ";

    gibt ein `echo $sql;`{:.language-php} das aus was du vermutest?  
      
    
    > `$return = mysql_query($sql) OR die(mysql_error());`{:.language-php}  
    
    was sagt [mysql_num_rows()](http://de.php.net/mysql_num_rows) an dieser Stelle?  
      
    
    > `while($_data = mysql_fetch_assoc($return))`{:.language-php}  
    
    für einen Datensatz brauchst du keine Schleife ... :-)  
      
    ~~~sql
      
    
    >   `anfang` timestamp(14) NOT NULL,  
    >   `ende` timestamp(14) NOT NULL default '00000000000000',
    
    

    schau dir die Ausgabe von time() mal an und dann das was in der Datenbank steht - du wirst feststellen, dass die beiden Ausgaben nicht das gleiche Format haben. Um die beiden Werte zu vergleichen musst du entweder den Wert in der Datenbank in einen Unix-Timestamp umwendeln, oder - besser - statt time() die MySQL-Funktion NOW() verwenden.

    Grüße aus Nürnberg
    Tobias

    1. Hallo Tobias,

      gibt ein echo $sql; das aus was du vermutest?

      hmm nee wenn ich das mit echo mache, dann kommt folgendes:

      SELECT ueberschrift, text FROM Test WHERE anfang < NOW() AND NOW() < ende ORDER BY RAND() LIMIT 1

      was sagt mysql_num_rows() an dieser Stelle?

      gar nichts :-(

      für einen Datensatz brauchst du keine Schleife ... :-)

      ja aber wo sind dann die Daten drin, dass die in die Tabelle einsetzten kann so wie eben in meien Beispiel $_data ?

      schau dir die Ausgabe von time() mal an und dann das was in der Datenbank steht - du wirst feststellen, dass die beiden Ausgaben nicht das gleiche Format haben. Um die beiden Werte zu vergleichen musst du entweder den Wert in der Datenbank in einen Unix-Timestamp umwendeln, oder - besser - statt time() die MySQL-Funktion NOW() verwenden.

      jepp das hat mit CK auch gerade gesagt ich soll lieber Now() hab das auch schon geamcht.

      Gruß jaylibII

      1. Hallo jaylibII,

        SELECT ueberschrift, text FROM Test WHERE anfang < NOW() AND NOW() < ende ORDER BY RAND() LIMIT 1

        hast du es schon mal einzeln mit »anfang < NOW()« bzw. »ende > NOW()« oder ganz ohne Bedingung versucht? Kannst du mal ein, zwei Beispieldatensätze (aus der Datenbank, nicht einfach eintippen) posten?

        für einen Datensatz brauchst du keine Schleife ... :-)
        ja aber wo sind dann die Daten drin, dass die in die Tabelle einsetzten kann so wie eben in meien Beispiel $_data ?

        den Aufruf von mysql_fetch_assoc() brauchst du natürlich trotzdem - aber es muss keine Schliefe drumrum.

        Grüße aus Nürnberg
        Tobias

        1. Hallo Tobias,

          SELECT ueberschrift, text FROM Test WHERE anfang < NOW() AND NOW() < ende ORDER BY RAND() LIMIT 1
          hast du es schon mal einzeln mit »anfang < NOW()« bzw. »ende > NOW()« oder ganz ohne Bedingung versucht? Kannst du mal ein, zwei Beispieldatensätze (aus der Datenbank, nicht einfach eintippen) posten?

          na ja hier mal ein Datensatz aus der Tabelle:

          INSERT INTO PartyTip VALUES (2, 'dsfds', 'fsdfsdfsd', 'sdfsdf', 'sdfsd', 'fsdfsd', 'fsdfsd', 'fssdfdsf', '2005-03-26', '2005-03-26', 'jaylibII', '2005-03-26 20:20:03');

          das meinst du doch so oder?

          ie Tabelle einsetzten kann so wie eben in meien Beispiel $_data ?

          den Aufruf von mysql_fetch_assoc() brauchst du natürlich trotzdem - aber es muss keine Schliefe drumrum.

          mein Code sieht nun so aus:

            
          <?php $sql = "SELECT  
          ueberschrift,  
          text  
            
          FROM  
          Test  
            
          WHERE  
          anfang < NOW() AND NOW() < ende  
            
          ORDER BY RAND()  
          LIMIT 1  
          ";  
          $result = mysql_query($sql);  
          $_data = mysql_fetch_assoc($result);  
          ?>  
          
          

          Gruß jaylibII

          1. Hallo jaylibII,

            INSERT INTO PartyTip VALUES (2, 'dsfds', 'fsdfsdfsd', 'sdfsdf', 'sdfsd', 'fsdfsd', 'fsdfsd', 'fssdfdsf', '2005-03-26', '2005-03-26', 'jaylibII', '2005-03-26 20:20:03');

            diesen Datensatz kannst du mit der Abfrage unten garnicht bekommen - wenn du das einfügst, steht im Feld ende nämlich der Wert 20050326000000 - ein NOW()+0 [1] gibt aber 20050326225404. So wird die Bedingung ende > NOW() false und der Query findet nichts. Wie sieht denn der Wert von ende für deine anderen Datensätze aus?

            das meinst du doch so oder?

            jep, so kann ich die Tabelle einfach mal bei mir einfügen und die Tabelle mit Daten füttern.

            na das mit den ~~~ -Blöcken üben wir aber nochmal :-)
            [code lang=php]
            <?php
            $sql = "[code lang=sql]SELECT ueberschrift, text
                      FROM Test
                      WHERE anfang < NOW() AND ende > NOW()
                      ORDER BY RAND() LIMIT 1

            $result = mysql\_query($sql);  
            $\_data = mysql\_fetch\_assoc($result);  
            ?>  
            [/code]  
            ich habe es gleich nochmal etwas umformatiert - das »text« hinter SELECT wird übrigends anders als »ueberschrift« dargestellt, da text ein reserviertes Wort ist.  
              
            Grüße aus Nürnberg  
            Tobias  
              
            [1] NOW() ohne »+0« würde 2005-03-26 22:54:04 liefern
            
            1. Hallo Tobias,

              diesen Datensatz kannst du mit der Abfrage unten garnicht bekommen - wenn du das einfügst, steht im Feld ende nämlich der Wert 20050326000000 - ein NOW()+0 [1] gibt aber 20050326225404.

              hmm das habei ch ja auch nicht selber eingetragen das habe ich mit einem Formular geamcht, dass wie folgt aussieht:

              $sql = "INSERT INTO Test
                  (
                   name,
                   ueberschrift,
                   text,
                   telefon,
                   fax,
                   url,
                   location,
                   verbindung,
                   anfang,
                   ende,
                  )
                  VALUES
                  (
                   '" . $_SESSION['benutzername'] . "',
                   '" . addslashes($_POST["ueberschrift"]) . "',
                   '" . addslashes($_POST["text"]) . "',
                   '" . addslashes($_POST["telefon"]) . "',
                   '" . addslashes($_POST["fax"]) . "',
                   '" . addslashes($_POST["url"]) . "',
                   '" . addslashes($_POST["location"]) . "',
                   '" . addslashes($_POST["verbindung"]) . "',
                   '" . addslashes($_POST["anfang"]) . "',
                   '" . addslashes($_POST["ende"]) . "',
                  )
                  ";
              mysql_query($sql) OR die(mysql_error());

              das stimmt doch so alles oder?

              jep, so kann ich die Tabelle einfach mal bei mir einfügen und die Tabelle mit Daten füttern.

              gut :-)

              na das mit den [code]-Blöcken üben wir aber nochmal :-)

              jepp das müssen wir wirklich nochmals üben. Hab ich auch erst vorhin gesehen, dass das Forum hier auch solche Funktion hat :-)

              Gruß jaylibII

              PS: Danke dass so geduldig bist....

              1. Hallo jaylibII,

                '" . addslashes($_POST["ueberschrift"]) . "',

                besser wäre hier statt addslashes die Funktion mysql_real_escape_string().

                das stimmt doch so alles oder?

                das kommt darauf an, was in $_POST['ende'] (bzw. $sql) steht ... :-)

                Du musste eben deine Daten so eingeben, dass die Bedingung auch eine Chance hat wahr zu werden - bei $_POST['anfang']==$_POST['ende'] _kann_ die Bedingung aber nie wahr werden. Was hast du denn in das Feld mit name="ende" eingegeben und was machst du mit $_POST['ende'] bevor du addslashes darauf anwendest und es in die Datenbank schreibst? Aber ein Datum nach dem heutigen musst du schon selbst eingeben, da kann ich dir auch nicht helfen :-)

                Grüße aus Nürnberg
                Tobias

                1. Hallo Tobias,

                  '" . addslashes($_POST["ueberschrift"]) . "',
                  besser wäre hier statt addslashes die Funktion mysql_real_escape_string().

                  hmm was ist an dem besser wie an meinem?

                  das stimmt doch so alles oder?
                  das kommt darauf an, was in $_POST['ende'] (bzw. $sql) steht ... :-)

                  hmm was da steht. In dem Feld also in der EIngabemaske schreibe ich: 26.03.2005 z.B. das ist doch richtig oder?

                  Du musste eben deine Daten so eingeben, dass die Bedingung auch eine Chance hat wahr zu werden - bei $_POST['anfang']==$_POST['ende'] _kann_ die Bedingung aber nie wahr werden. Was hast du denn in das Feld mit name="ende" eingegeben und was machst du mit $_POST['ende'] bevor du addslashes darauf anwendest und es in die Datenbank schreibst?

                  hmm gar nichts, ich übernemhe das so wie ich das in das Formular eingegeben habe also z.B. 26.03.2005 was soll ich denn sonst damit noch machen?

                  Aber ein Datum nach dem heutigen musst du schon selbst eingeben, da kann ich dir auch nicht helfen :-)

                  hmm was meinst du denn damit? Ich brauch ja bei der eingabe das heutige Datum gar nie. Da die Sachen die da rein kommen eh immer schon sehr viel früher eingetragen werden. Verstehst du was ich meine?

                  Gruß jaylibII

                  1. Hallo jaylibII,

                    besser wäre hier statt addslashes die Funktion mysql_real_escape_string().
                    hmm was ist an dem besser wie an meinem?

                    mysql_real_escape_string() ist speziell dafür gedacht, und maskiert auch etwas mehr als addslashes()

                    hmm was da steht. In dem Feld also in der EIngabemaske schreibe ich: 26.03.2005 z.B. das ist doch richtig oder?

                    wenn du willst, dass in der Datenbank 2026-03-20* steht, ja.

                    hmm gar nichts, ich übernemhe das so wie ich das in das Formular eingegeben habe also z.B. 26.03.2005 was soll ich denn sonst damit noch machen?

                    umformen. welches Format MySQL für ein Datum erwartet steht auf: http://dev.mysql.com/doc/mysql/de/datetime.html

                    Aber ein Datum nach dem heutigen musst du schon selbst eingeben, da kann ich dir auch nicht helfen :-)
                    hmm was meinst du denn damit? Ich brauch ja bei der eingabe das heutige Datum gar nie.

                    ja, wenn du aber eine Ausgabe haben willst, musst du eben dafür sorgen bzw. darauf achten, dass auch ein Datum vorhanden ist, auf das die Bedingungen passen.

                    Grüße aus Nürnberg
                    Tobias

                    * das macht jedenfalls mein MySQL (4.0.21) aus 26.03.2005 ...

                    1. Hallo Tobias,

                      mysql_real_escape_string() ist speziell dafür gedacht, und maskiert auch etwas mehr als addslashes()

                      na gut dann nehmen ich eben das dafür soll mir auch recht sein. Damit haben ich keine Probleme.

                      hmm was da steht. In dem Feld also in der EIngabemaske schreibe ich: 26.03.2005 z.B. das ist doch richtig oder?
                      wenn du willst, dass in der Datenbank 2026-03-20* steht, ja.

                      na ja was ich will ist hier mal ganz egal. Ich will nur, dass das geht wie ist mir egal. Wenn ich das so machen will dass dien Code dafür geht, dann ist das wohl falsch was jetzt gerade eingetragen wird richtig?

                      umformen. welches Format MySQL für ein Datum erwartet steht auf: http://dev.mysql.com/doc/mysql/de/datetime.html

                      na gut dann muss ich mal sehen wo und wie ich das machen muss, dass er das dann auch richtig in die DB einträgt.

                      ja, wenn du aber eine Ausgabe haben willst, musst du eben dafür sorgen bzw. darauf achten, dass auch ein Datum vorhanden ist, auf das die Bedingungen passen.

                      hmm wenn ich das nun richtig verstanden haben, dann brauch ich in der DB insgesammt drei mal ein Datum einmal mit dem heutigen wo das eingetragen worden ist, dann wenn das anfangen soll zum anzuzeigen und dan noch eines um wieder festzulegen wenn das nicht mehr anzeigen soll oder?

                      Gruß jaylibII

                      1. Hallo jaylibII,

                        wenn du willst, dass in der Datenbank 2026-03-20* steht, ja.
                        na ja was ich will ist hier mal ganz egal.

                        das sollte nur ein Schubser darauf sein, dass es so nicht funktionieren wird :-)

                        umformen. welches Format MySQL für ein Datum erwartet steht auf: http://dev.mysql.com/doc/mysql/de/datetime.html
                        na gut dann muss ich mal sehen wo und wie ich das machen muss, dass er das dann auch richtig in die DB einträgt.

                        ich verwende dafür sowas:
                        $feld = preg_replace('~^([0-9]{2})\.([0-9]{2})\.([0-9]{4})$~',"$3-$2-$1",$_POST['gebdatum']);
                        allerdings läuft über $_POST['gebdatum'] vorher noch eine Prüfung auf Gültigkeit des Datums drüber, außerdem wird das Datum beim Prüfen automatisch in die Form DD.MM.YYYY gebracht. Du könntest das Datum natürlich auch mit substr auseinanderpflücken, aber dazu war ich zu faul :-)

                        hmm wenn ich das nun richtig verstanden haben, dann brauch ich in der DB insgesammt drei mal ein Datum einmal mit dem heutigen wo das eingetragen worden ist, dann wenn das anfangen soll zum anzuzeigen und dan noch eines um wieder festzulegen wenn das nicht mehr anzeigen soll oder?

                        das musst du schon selber wissen, was du machen würdest, aber ich würde mal sagen: ja, so wie ich das verstanden haben brauchst du zumindest die Felder anfang und ende. Zum Auswählen des anzuzeigenden Feldes ist das eintagsdatum aber nicht notwendig.

                        Grüße aus Nürnberg
                        Tobias

            2. Hallo Tobias,

              noch was,

              in meiner Tablle sehen die zwie Felder start und ende so aus:

              anfang date default NULL,
                ende date default NULL,

              stimmt das denn? Denn wenn ich das mit PHPMYADMIN mit ansehen, dann steht das Datum so drin:

              2005-03-26

              Gruß jaylibII

              1. Hallo jaylibII,

                in meiner Tablle sehen die zwie Felder start und ende so aus:
                anfang date default NULL,
                  ende date default NULL,
                stimmt das denn?

                ja, nur wird die Bedingung »anfang < NOW()« heute natürlich nicht wahr, sondern erst morgen - wenn die Bedingung auch heute greifen soll, musst du eben <= verwenden.

                Grüße aus Nürnberg
                Tobias

                1. Hallo Tobias,

                  ja, nur wird die Bedingung »anfang < NOW()« heute natürlich nicht wahr, sondern erst morgen - wenn die Bedingung auch heute greifen soll, musst du eben <= verwenden.

                  na ja die paar Minuten die kann ich nun auch noch warten denn wir haben ja gleich morgen :-)

                  Gruß jaylibII