Ankündigung

Einklappen
Keine Ankündigung bisher.

timestamp in mysql

Einklappen

Neue Werbung 2019

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

  • timestamp in mysql

    so folgendes problem:
    hab einen internen bereich in den man nur mit benutzername und passwort kommt. wenn man diese daten richtig eingegeben hat und ddas passwort mit dem passwort in der datenbank identisch ist...bekommt der user in seiner zelle "session" eben eine session die zufällig generiert wird und es wird dann noch in der zelle "time" ein timestamp gemacht...
    hab es auch schon so gemacht das ich mit dem timestamp arbeiten kann und das die session eben nur 30 min gültig ist...also das man, wenn man länger als 30 min auf !einer! seite bleibt und erst dann wechselt die session abgelaufen ist un d man sich neu einloggen soll...
    wenn man aber !vorher! die seite wechselt soll ja wieder ein neuer timestamp gemacht werden...
    soll also nen update in Tabelle gemacht werden...es soll aber nichts verändert werden sondern NUR ein neuer timestamp gemacht werden damit man eben wieder 30 min zeitfrist hat...
    problem:
    wenn ich versuche einen eigenen timestamp reinzuschreiben kommt dann als ergebnis 0000-00-00 00:00:00 raus >_>
    wie soll ich also nun NUR den timestamp "aktualisieren"?

  • #2
    ehm ich glaube das hat nichts mit einem wissensstand eines fortgeschrittenen zu tun -.-

    und ausserdem verstehe ich nicht so ganz was du möchtest. evtl wäre ein wenig code auch von vorteil

    Kommentar


    • #3
      ich will einfach nur den timestamp und nichts anderes in der spalte der tabelle erneuern:
      PHP-Code:
      $sql ="UPDATE ".$table['admin']." SET time=UNIX_TIMESTAMP(time) WHERE session=".$session;
      mysql_query ($sql$verbindung); 

      Kommentar


      • #4
        was soll time = UNIX_TIMESTAMP(time)?
        Meinst du:
        time = time + 30 * 60

        Kommentar


        • #5
          eigentlich will ich folgenden inhalt in time bekommen:
          PHP-Code:
          <?php
          time
          =".date("Y-m-d H:i:s", time())."
          ?>

          Kommentar


          • #6
            Warum nimmst du dann UNIX_TIMESTAMP()? Welcher Typ ist time? DATETIME?

            time = NOW()

            könnte dann gehen.

            Kommentar


            • #7
              field => time
              type => timestamp
              collation => ON UPDATE CURRENT_TIMESTAMP

              das mit UNIX_TIMESTAMP hab ich verwechselt das war zum konvertieren eines MySQL timestamp zu einem Unix-style timestamp gedacht

              Kommentar


              • #8
                thx!
                hab jetzt auf datetime:
                PHP-Code:
                //------aus der core.php
                function update($table,$was,$wo,$verbindung) {
                $sql "UPDATE ".$table." SET ".$was." WHERE ".$wo;
                echo 
                $sql."
                "
                ;
                    
                mysql_query($sql$verbindung);
                }
                //------refresh
                $time=date("Y-m-d H:i:s",time());
                $was "time='".$time."'";
                update($table["admin"],$was,"session='".$session."'",$verbindung); 

                Kommentar


                • #9
                  1. die PHP Funktion date brauch kein 2. Argument, wenns eh das aktuelle sein soll, gut schadet aber auch nicht
                  2. aber unnötig, da MySQL das wie gesagt mit NOW() selber machen kann und was man mit MySQL machen kann, sollte man eigentlich auch damit machen (da weniger Codezeilen)

                  Kommentar


                  • #10
                    hab ich jetzt auch übernommen
                    nochmals thx :wink:

                    Kommentar

                    Lädt...
                    X