mktime()

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • mktime()

    Hi, mit diesem script will ich bewirken, das die Daten einer Tabelle, die man am Tag davor eingetragen hat gelöscht werden!
    Dazu hab ich die Löschfunktion in diem Hauptseite eingefügt

    zum deleten in der index.php
    PHP Code:
    <?php
      
    // $heute_null_uhr = timestamp() von genau heute morgen um 0 uhr
      
    mysql_connect("localhost","xxx","xxx") or die ("Keine Verbindung moeglich");
    mysql_select_db("usr_web48_1") or die ("Die Datenbank existiert nicht");

      
    $heute_null_uhr mktime(0,0,0,date("m"), date("d"), date("Y"));
      
    $query "DELETE FROM MMircwar WHERE time < $heute_null_uhr";
       
    $query "DELETE FROM MMcomment WHERE time < $heute_null_uhr"
    mysql_query($query);
    ?>
    Zum füllen der Tabelle hab ich folgendes gemacht:

    PHP Code:
    mysql_connect("localhost","xxx","xxx") or die ("Keine Verbindung moeglich");
    mysql_select_db("usr_web48_1") or die ("Die Datenbank existiert nicht");

    $commentuser $HTTP_POST_VARS["commentuser"];
    $comment $HTTP_POST_VARS["comment"];
    $id $HTTP_POST_VARS["id"];
    $war_tag mktime($stunde$minute$sekunde$monat$tag$jahr);

    $eintrag "INSERT INTO MMcomment (commentuser, comment, time) VALUES ('$commentuser', '$comment', '$war_tag')";

    $eintragen mysql_query($eintrag); 
    wo ist nun der Fehler?
    Es wird immer "-1" bei time in die Tabelle eingetragen!
    Vielleicht hab ich was in der Datenbank falsch eingestellt, also ob int(30) oder eins der anderen!
    Bitte um Hilfe, Mfg Markus!
    Last edited by checker; 02-03-2004, 19:40.

  • #2
    Welcher Spaltentyp ist denn "time"? Wahrscheinlich nicht TIMESTAMP.

    Comment


    • #3
      du sollst deine Zugangsdaten nicht posten!
      Welchen Type hat time?
      mach mal backticks um `time` oder nenn es besser anders.
      was gibt
      PHP Code:
      echo $war_tag
      aus?

      Offe

      Comment


      • #4
        das gibt "-1" aus

        Welcher Spaltentyp ist denn "time"? Wahrscheinlich nicht TIMESTAMP.
        Was meinst du damit?

        Comment


        • #5
          das gibt "-1" aus
          dann ist es nicht verwunderlich, daß -1 eingetragen wird.

          EDIT:
          Die Variablen $stunde, $minute, $sekunde, $monat, $tag, $jahr sind wahrscheinlich nicht gesetzt.


          Offe
          Last edited by Offe1; 02-03-2004, 20:05.

          Comment


          • #6
            was muss ich denn machen, dass er nicht "-1" ausgibt, irgendwas an der Datenbank?
            Mfg Markus

            Comment


            • #7
              PHP Code:
              <?php
                
              // $heute_null_uhr = timestamp() von genau heute morgen um 0 uhr
                
              mysql_connect("localhost","xxx","xxx") or die ("Keine Verbindung moeglich");
              mysql_select_db("usr_web48_1") or die ("Die Datenbank existiert nicht");

                 
              $query "DELETE FROM MMircwar WHERE time  >=CURRENT_DATE()";
                 
              $query "DELETE FROM MMcomment WHERE time >=CURRENT_DATE()"
              mysql_query($query);




              mysql_connect("localhost","xxx","xxx") or die ("Keine Verbindung moeglich");
              mysql_select_db("usr_web48_1") or die ("Die Datenbank existiert nicht");

              $commentuser $HTTP_POST_VARS["commentuser"];
              $comment $HTTP_POST_VARS["comment"];
              $id $HTTP_POST_VARS["id"];

              $eintrag "INSERT INTO MMcomment (commentuser, comment, time) VALUES ('$commentuser', '$comment', now())";

              $eintragen mysql_query($eintrag);
              Nicht getestet, müsste aber so klappen.

              Comment


              • #8
                aber in time wird ja immer -1 ausgegeben?

                Comment


                • #9
                  ahh, wie müsste ich denn diese Variablen dann festlegen?
                  Mfg Markus

                  Comment


                  • #10
                    in php kannst du dir mktime() sparen ... der timestamp für jetzt, als jetzt
                    gleich kommt über time() oder bei der query UNIX_TIMESTAMP() ... es sei
                    denn du willst einen sql-timestamp, dann ist now() dein freund ... zur info:
                    http://www.mysql.com/doc/de/Date_and...functions.html
                    http://de3.php.net/manual/de/function.time.php
                    Kissolino.com

                    Comment


                    • #11
                      Dann schau dir doch mal an wie ich time gefüllt habe!!!!

                      mit now() im sql-string

                      Comment

                      Working...
                      X