2016-06-04 14 views
-1

Ich möchte die date in der Datenbank überprüfen und den Benutzer auf eine andere Seite umleiten, wenn die date in der Datenbank vor dem heutigen Datum ist.Redirect wenn Datum <= aktuelles Datum

Ich habe derzeit:

<?php 
$user_name = "root"; 
$password = ""; 
$database = "db"; 
$server = "localhost"; 

$db_handle = mysql_connect($server, $user_name, $password); 
$db_found = mysql_select_db($database, $db_handle); 

if ($db_found) { 
    $result = mysql_query("SELECT `date` FROM users WHERE user_id='1'"); 
    $res = mysql_fetch_row($result); 

    if ($res[0] == 1){ 
    header ("Location: ./error.php"); 
    }       
    else 
    { 
    echo ' '; 
    } 
} 
else 
{ 
    print "Database NOT Found."; 
    mysql_close($db_handle); 
} 
?> 

Wie kann ich diese Arbeit machen?

+0

'date' ein reserviertes Wort. Um es als Spaltennamen zu verwenden, setzen Sie Backticks (') darum herum. Dies sollten Sie idealerweise für alle Spalten-/Tabellennamen tun. –

+0

Sobald Sie das haben, vergleichen Sie einfach $ res [0]

+0

Und dann, sichern Sie Ihre Anwendung. Es ist eine sehr schlechte Idee, mit der DB als 'root' zu verbinden. Außerdem sollten Sie keine 'mysql_ *' - Funktionen verwenden, da sie in aktuellen PHP-Versionen entfernt wurden. –

Antwort

1

Im Folgenden werden die für Ihre Datenbank Abfrage hinzufügen und geben nur eine Zeile, wenn beide ... gefunden werden, ist

$user_name = "root"; 
$password = ""; 
$database = "db"; 
$server = "localhost"; 

$db_handle = mysql_connect($server, $user_name, $password); 
$db_found = mysql_select_db($database, $db_handle); 

if (!$db_found) { 
    mysql_close($db_handle); 
    print "Database NOT Found."; 
    exit(); 
} 

$result = mysql_query("SELECT 1 FROM users WHERE user_id='1' AND date < CURDATE()"); 
if ($res = mysql_fetch_row($result)) { 
    //user matched and date is larger that current date 
    mysql_close($db_handle); 
    header ("Location: ./error.php"); 
    exit(); 
}       

//user not matched or date is not larger that current date 
//do something else