Datum per formular einlesen...

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

  • Datum per formular einlesen...

    Hi,

    Also folgendes:

    Ich will ein Datum per Formular einlesen, und zwar so das ich es in einen timestamp umwandeln kann um dieses datum mit einem anderen vergleichen zu können.

    Wie stell ich das am geschicktesten an?
    Ich hab keine ahnung wie ich ein userfeundliches formular erstellen soll und wie ich dann einen timestamp draus mache.

    Wär echt dankbar für hilfe ;-) danke

  • #2
    hi

    das bringt dich vielleicht weiter...


    PHP-Code:

    <?

    $now = time();

    echo "<form action="..." ...>";

    /*
    Hier die <form>-elemente
    */

    echo "<input type=\"submit\" value=\"senden\">";
    echo "<input type=\"hidden\" name = \"timestamp\" value=\"".$now."\">";

    ?>

    Jetzt hast du mit $_POST['timestamp'] die aktuelle Zeit als timestamp...

    cya CrazyPip

    Kommentar


    • #3
      Hehe,
      das ist ja einfach das mach ich auch, allerdings handelt es sich ume ein Event-Listing und man soll das Datum eintragen an dem das Event (Geburtstag, LAN oder ähnliches) stattfindet. Um dies mit dem aktuellen Datum vergleichen zu können müsste ich halt den Timestamp des eventdates wissen. Und das ist das Problem...

      Es soll also vom User ein Datum in der Zukunft angegeben werden und das soll als timestamp in der db drinstehen.

      thx4 help

      Kommentar


      • #4
        mache drei select-felder. montag/tag/jahr. evtl auch noch für die zeit was.

        nach dem zusammensetzen in php hast du dann YYYY-MM-DD, was du in der DB eintragen kannst.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          Danke, genauso hab ichs gemacht!

          Jahr, Monat und Tag werden vom Formular übergeben.
          Hier der Code für die weitere Berechnung:

          PHP-Code:
          // Eventdate - Timestamperstellung
          $datearray = array("$jahr","$monat","$tag"); 
          $en_date implode ("-"$datearray);
          $eventdate strtotime("$en_date"); 

          Kommentar


          • #6
            Alternativ wäre es auch möglich gewesen das Datum in einen Timestamp umzuwandeln und diesen in der DB zu speichern/vergleichen.
            mfg
            Günni


            Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
            Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
            Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
            City-Tiger - Online durch die Straßen tigern...

            Kommentar


            • #7
              PHP-Code:
              $result mysql_query("SELECT * FROM kdf_wasgeht ORDER BY `eventdate` ASC",$dbase);



              // AUSGABE        
              while ($myrow mysql_fetch_row($result)) {
              // Automatisches löschen nach Event
              $today getdate();
              $year $today['year'];
              $day $today['mday']; 
              $month $today['mon'];
              $datearray = array("$year","$month","$day"); 
              $date implode ("-"$datearray);
              $nowdate strtotime("$date");

              $one_day=60*60*24;
              $afterevent $eventdate $one_day;

              if (
              $nowdate $afterevent
                      {
                          
              "DELETE FROM kdf_wasgeht WHERE eventdate > $afterevent";
                      }

              printf("<body bgcolor='000000'><center>
                <table width='500' border='1' cellpadding='0' cellspacing='0' bordercolor='000000'>
                  <tr bgcolor='990000'> 
                    <td bordercolor='990000'><strong><font size='2' face='Verdana' color='ffffff'>%s&nbsp;</font></strong></td>
                  </tr>
                  <tr bgcolor='990000'> 
                    <td bordercolor='990000'><font face='verdana' size='1' color='ffffff'>%s</font> 
                      </td>
                  </tr>
                </table>
              </center><br><br></body>
              "

              $myrow[1], $myrow[3]);

              }
              ?> 
              Was stimmt da net? hatte das automatische löschen auch schon ausserhalb der schleife ging aber net und ausserdem muss es ja irgendwie da eingebaut sein oder??

              thx4help

              Kommentar


              • #8
                was ist das????

                "DELETE FROM kdf_wasgeht WHERE eventdate > $afterevent";

                mitten im code ein string, der nicht zugewiesen wird. das kann ja nur parse-errors geben.

                zum anderen ist das posten von fehlermeldungen, die du bekommst hilfreich. nicht jeder hat ne glaskugel zu hause stehen.
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  wenn eine Fehlermeldung kommen würde hätte ich sie gepoted ;-)

                  Es kommt aber keine,
                  Er macht einfach nach der schleife weiter als ob die if-bedingung nicht erfüllt sei...

                  Und welchen String meinst du?

                  thx4help

                  Kommentar


                  • #10
                    den hier.
                    Original geschrieben von Abraxax
                    was ist das????

                    "DELETE FROM kdf_wasgeht WHERE eventdate > $afterevent";
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      @FloPe

                      das is doch Käse ...

                      schreib die Daten, die vom User kommen als DateTime in die DB, dann kannst du mit BETWEEN, > und < vergleichen. Alles andere ist nur eine ständige hinundherumwandlerei von Timestamps ... Ausserdem musst du sonst bei jedem Update aufpassen, dass der Timestamp nicht neu gesetzt wird ...


                      das aktuelle Datum für Vergleiche in der DB bekommst du mit
                      PHP-Code:
                      $inserttime date("Y-m-d H:i:s",time()); 

                      Grüsse
                      CB
                      Hans Matthöfers Widerspruch zur Expertenerkenntnis: Künstliche Intelligenz ist besser als natürliche Dummheit.

                      Kommentar


                      • #12
                        Kannst du mir das mal in mein skript einbauen? Wichtig ist, dass nur das Datum eingetragen wird, also ohne Uhrzeit...

                        thx4help

                        Kommentar


                        • #13
                          Original geschrieben von FloPe
                          Kannst du mir das mal in mein skript einbauen?
                          OffTopic:
                          aber sonst ist alles ok?
                          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                          Kommentar


                          • #14
                            @FloPe
                            Also wenn du probleme hast dies in dein Skript einzubauen, würde ich mir zur übung einige Tutorials bzw. Bücher anschauen.
                            Hier, wenn du möchtest sind ein paar links:
                            http://www.galileocomputing.de/openbook/php4/
                            http://www.schattenbaum.net/php/
                            http://www.homer-c.de/homer-php/learninphp.php
                            http://www.php.net/manual/de/
                            mfg
                            Günni


                            Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
                            Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
                            Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
                            City-Tiger - Online durch die Straßen tigern...

                            Kommentar


                            • #15
                              sorry, aber offensichtlich liegt hier ein kleines Missverständnis vor...
                              ich will doch nur wissen wie ich die beiden timestamps die schon in meiner Datenbank drin sind vergleichen kann mehr nicht.

                              Das ich nicht der php-Profi bin weiß ich selber. Aber das Skript da oben komt mir völlig aus dem zusammenhang gerissen vor.
                              Ihr macht net den Eindruck als wollteet ihr wirklich helfen...

                              Vielleicht irre ich mich auch

                              trotzdem Danke....

                              Kommentar

                              Lädt...
                              X