Timestamp problem

Matthiasghh

Mitglied
Hallo User habe ein Timestamp problem,
ich möchte einen Timestamp in die SQL Datenbank eintragen und den dann vergleichen und bei einer abgelaufen Zeit den Zugang verwehren aber leider funktionert das nicht.
PHP:
// Der insert in die Sql Datenbank
$passwort = md5($passwort);
$timestamp = strtotime("+3 day");
$eintrag = "INSERT INTO kunden (id, kundennr, datum, benutzer, passwort, zugang, email, timestamp) VALUES ('$id','$kundennr','$datum','$benutzer','$passwort','$zugang','$email','$timestamp')";
$eintragen = mysql_query($eintrag);

PHP:
// Prüfung der Zugangsdaten und dem Timestamp
$query = mysql_query("SELECT id FROM kunden WHERE benutzer='".$benutzername."' AND passwort='".md5($pw)."'"); 
$nums = mysql_num_rows($query); 
$query = mysql_query("SELECT timestamp FROM kunden WHERE benutzer='".$benutzername."' AND passwort='".md5($pw)."'"); 
$timestamp = mysql_num_rows($query); 
if ($nums and time()<=$timestamp) 
{ 
header("Location: login.php?login=startseite&SESSID=$PHPSESSID"); 
exit(); 
} 
else 
{ 
$ausgabe = "falsch"; 
header("Location: ../index.php?zugang=off"); 
exit(); 
}
Wer kann sagen warum das nicht geht ? :)
 
PHP:
if ($nums and time()<=$timestamp['timestamp'])
Hättest du das nicht mit in deinem andren Thread unterbringen können, ist ja schließlich das selbe Thema.
 
Hallo und Danke,

aber ich komme nicht in den Login Zugang.
wo liegt das Problem habe gerade einen neuen Zugang angelegt Timestamp Wert: 96376855881600 muss ich den aktuellen wirklichen Wert nehmen.

PHP:
// Aktuellen + 3 Tage
$timestamp = time()*86400;

Vielen Dank !
 
Probier mal Folgendes:
PHP:
<?php

	// Prüfung der Zugangsdaten und dem Timestamp
	$query = "
		SELECT
		        `timestamp`
		  FROM
		        `kunden`
		  WHERE
		        `benutzer` = '".mysql_real_escape_string($benutzername)."'
		    AND `passwort` = '".md5($pw)."'
		  LIMIT
		        1
		";
	if( $result = mysql_query($query) && time() <= mysql_result($result, 0) ) {
		header('Location: login.php?login=startseite&SESSID='.$PHPSESSID);
		exit();
	} else {
		$ausgabe = "falsch";
		header('Location: ../index.php?zugang=off');
		exit();
	}

?>
 
Feld Typ Kollation Attribute Null Standard Extra Aktion
timestamp timestamp Ja CURRENT_TIMESTAMP
---------------------------------------------------------------------------------------------------------------------------------
wie soll ich den timestamp in die SQL bringen ?
Ich mache das so :
PHP:
$timestamp = time()*86400;
$eintrag = "INSERT INTO kunden (id, kundennr, datum, benutzer, passwort, zugang, email, timestamp) VALUES ('$id','$kundennr','$datum','$benutzer','$passwort','$zugang','$email','$timestamp')";
$eintragen = mysql_query($eintrag);
Abfrage:
PHP:
// Prüfung der Zugangsdaten und dem Timestamp 
    $query = " 
        SELECT 
                `timestamp` 
          FROM 
                `kunden` 
          WHERE 
                `benutzer` = '".mysql_real_escape_string($benutzername)."' 
            AND `passwort` = '".md5($pw)."' 
          LIMIT 
                1 
        "; 
    if( $result = mysql_query($query) && time() <= mysql_result($result, 0) ) { 
        header('Location: login.php?login=startseite&SESSID='.$PHPSESSID); 
        exit(); 
    } else { 
        $ausgabe = "falsch"; 
        header('Location: ../index.php?zugang=off'); 
        exit(); 
    }
 
Bin mir nicht sicher, ist aber timestamp nicht ein reserviertes Wort und darf so nicht las Feldname benützt werdn. Poste mal die Fehlermeldung
 
Zurück