Abgespeichertes Datum -60 Tage

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

  • Abgespeichertes Datum -60 Tage

    Hallo communiti,
    habe ein problem und habe das ganze Furom durchsucht und leider nichts gefunden.

    Ich möchte auf der Newsseite die Events zeigen, aber nicht alle sondern nur die der kommenden 60 Tagen.
    Ich habe ein Formular wo ich die Daten eingebe. Das Datum gebe ich mit 2002.04.08 ein, damit es keine probleme beim MySQL Server gibt.
    Von diesem Datum aus möchte ich 45 Tage abziehen und auch im gleichen Schritt in die Datenbank speichern. Nur bekomme ich das nicht hin . Die SQL abfrage mache ich über das Datum wenn der Anlass stattfindet und das Startdatum, wann es auf der Page angezeigt werden soll.
    Wäre froh über einen Lösungsansatz.
    Gruss Tom

  • #2
    SELECT DATE_SUB(NOW(), INTERVAL 60 DAY);

    http://www.php-resource.de/forum/sho...?threadid=5719
    http://www.php-resource.de/forum/sho...?threadid=5218
    http://www.mysql.com/doc/D/a/Date_an...functions.html

    Kommentar


    • #3
      @ hand

      danke für deinen Rat.
      Genau das ist es. Jetzt wie bekomme ich die neu Ausgabe von dem DATE_SUB(datum, INTERVAL 60 DAY) in meine SQL Datenbank?
      Es will einfach nicht.
      Gruss Tom

      Kommentar


      • #4
        Willst Du vom aktuellen Zeitpunkt 60 Tage abziehen:

        UPDATE tabelle SET datumintabelle = DATE_SUB(NOW(), INTERVAL 60 DAY);

        Von einem beliebigen Zeitpunkt 60 Tage abziehen:

        $zeitpunkt = "1997-12-31 23:59:59";
        ...
        UPDATE tabelle SET datumintabelle = DATE_SUB($zeitpunkt, INTERVAL 60 DAY);

        oder beim Insert:

        INSERT INTO tabelle (feldintabelle, datumintabelle, ...) VALUES ("irgendwas", DATE_SUB($zeitpunkt,INTERVAL 60 DAY));


        Update: http://www.mysql.com/doc/U/P/UPDATE.html
        Insert: http://www.mysql.com/doc/I/N/INSERT.html

        Kommentar


        • #5
          @ hand

          Danke,
          habe es versucht und bin leider nicht zum gewünschten resultat gekommen. Das Datum wurde niocht eingetragen. Halbsoschlimm habe mich für die Variante via SQL Befehl Select*,DATE_SUB(datum, INTERVAL 60 DAY) usw. datum = Datenbankzelle entschieden. Das geht auch. Ich hoffe einfach das alle User die die Site anschauen ein aktuelles Datum auf Ihren Kisten haben, den der now() Befehl wird ja von der Maschine gelesen.
          Auf jedefall vielen dank.
          Gruss Tom

          Kommentar


          • #6
            Das PHP Skript läuft am Server und NOW() ermittelt über Serverzeit den zeitpunkt der Abfrage, des Inserts oder Updates, und hat mit der eingestellten Zeit am Client nichts zu tun.

            Kommentar


            • #7
              @ hand

              Ach logisch das es die Zeit des Server nimmt.
              Man bin ich blöd, den ich habe ja mein Datum an meinem Rechner wo der Apache läuft verändert!
              Gruss Tom

              Kommentar


              • #8
                Sorry, wenn ich mich hier mal ranhänge

                Ich habe nun bestimmt schon 20 Threads zum Thema "Datumsfunktionen" durchgelesen aber leider ohne Erfolg.

                Folgendes Problem:
                Ein User gibt per Texteingabefeld ein Datum ein von dem dann 7 Tage abgezogen werden und in die DB geschrieben werden soll.

                Ich habe nun mal versucht den Tip von hand für mich umzusetzen, aber das funktioniert leider nicht - Habe ich was falsch verstanden.
                Hier mal der Code:
                remember ist die entsprechende tabellenzelle und $date die Variable mit dem eingegebenem Datum.
                PHP-Code:
                $datum "(INSERT INTO kunden (remember)VALUES (DATE_SUB($date,INTERVAL 7 DAY)))";
                      
                mysql_db_query($dbname,$datum); 
                Wäre nett, wenn mir jemand helfen könnte.

                P.S. Bin Anfänger

                Kommentar

                Lädt...
                X