2016-05-02 3 views
-1

Ich versuche, das aktuelle Datum, Exp-Datum mit 25-Tage-Intervall und E-Mail-Flugdatum mit 20-Tage-Intervall einfügen.aber diese Daten nicht speichern in der Datenbank.Was kann der Grund sein?Wie kann ich aktuelles Datum auf PHP mysql

Hier ist mein Code

<?php 

include_once 'dbconnect.php'; 

if(isset($_POST['btn-signup'])) 
{ 
    $reqnum = $_POST['reqnum']; 
    $Mnumber = $_POST['Mnumber']; 
    $email = $_POST['email']; 
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { 
     $emailErr = "Invalid email format"; 
    } 

    $fname = $_POST['fname']; 
    $address = $_POST['address']; 
    $sitename = $_POST['sitename']; 
    $payment = $_POST['payment']; 
    $title = $_POST['title']; 
    $descr = $_POST['descr']; 
    $regdate = $_POST['reg_date']; 
    $exp_date =$_POST['exp_date']; 
    $emailflydate = $_POST['emailflydate']; 

    //if() 
    //{ 
    $new_fname= $_POST['sitename']; 
    $xxx = mysql_query("SELECT sitename FROM gotest WHERE sitename = '$new_fname'")or die(mysql_error()); 
    $yyy = mysql_fetch_row($xxx); 

    if(mysql_num_rows($xxx) > 0) 
    { 
     echo "<script type='text/javascript'>alert('gdrhh !')</script>"; 

    } 
    else 
    { 
     $query = mysql_query("INSERT INTO gotest(Mnumber,email,fname,address,sitename,reqnum,payment,title,descr,reg_date,exp_date,emailflydate) VALUES('$Mnumber','$email','$fname','$address','$sitename','$reqnum','$payment','$title','$descr', CURDATE(), DATE_ADD(CURDATE(), INTERVAL 25 DAY), DATE_ADD(CURDATE(), INTERVAL 20 DAY))"); 

     $r = mysql_insert_id(); 


    } 

} 

?> 
+0

Ist es, wenn Sie in phpMyAdmin versuchen zu arbeiten? Überprüfen Sie auch, ob Ihre andere Bedingung funktioniert oder nicht – Poria

+3

** WARNUNG **: Wenn Sie nur lernen, PHP, bitte verwenden Sie nicht die ['mysql_query'] (http://php.net/manual/en/function .mysql-query.php) Schnittstelle. Es ist so schrecklich und gefährlich, dass es in PHP 7 entfernt wurde. Ein Ersatz wie [PDO ist nicht schwer zu erlernen] (http://net.tutsplus.com/tutorials/php/why-you-should-beusing-phps) -pdo-for-database-access /) und ein Leitfaden wie [PHP The Right Way] (http://www.phptherightway.com/) erläutert Best Practices. Ihre Benutzerparameter sind ** nicht ** [richtig maskiert] (http://bobby-tables.com/php) und es gibt [SQL injection bugs] (http://bobby-tables.com/), die ausgenutzt werden können . – tadman

+0

verwenden Sie jetzt(). Es wird dir helfen. – RJParikh

Antwort

2

Sie immer NOW() oder UTC_TIMESTAMP() einsetzen können, wenn Sie es vorziehen.

0

ausprobieren: -

<?php 

include_once 'dbconnect.php'; 

if(isset($_POST['btn-signup'])) 
{ 
    $reqnum = $_POST['reqnum']; 
    $Mnumber = $_POST['Mnumber']; 
    $email = $_POST['email']; 
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { 
     $emailErr = "Invalid email format"; 
    } 

    $fname = $_POST['fname']; 
    $address = $_POST['address']; 
    $sitename = $_POST['sitename']; 
    $payment = $_POST['payment']; 
    $title = $_POST['title']; 
    $descr = $_POST['descr']; 
    $regdate = $_POST['reg_date']; 
    $exp_date =$_POST['exp_date']; 
    $emailflydate = $_POST['emailflydate']; 

    //if() 
    //{ 
    $new_fname= $_POST['sitename']; 
    $xxx = mysql_query("SELECT sitename FROM gotest WHERE sitename = '$new_fname'")or die(mysql_error()); 
    $yyy = mysql_fetch_row($xxx); 

    if(mysql_num_rows($xxx) > 0) 
    { 
     echo "<script type='text/javascript'>alert('gdrhh !')</script>"; 

    } 
    else 
    { 
     $query = mysql_query("INSERT INTO gotest(Mnumber,email,fname,address,sitename,reqnum,payment,title,descr,reg_date,exp_date,emailflydate) VALUES('$Mnumber','$email','$fname','$address','$sitename','$reqnum','$payment','$title','$descr', '".date('Y-m-d h:i:s')."', '".date('Y-m-d h:i:s')."', INTERVAL 25 DAY), DATE_ADD(CURDATE(), INTERVAL 20 DAY))"); 

     $r = mysql_insert_id(); 


    } 

} 

?>