2016-05-02 17 views
-1

私は現在の日付を挿入しようとしています25日の間隔と電子メールフライ日付20日のinterval.butこれらのデータはデータベースに保存されません理由がありますか?ここでどのように私はPHP mysqlに現在の日付を挿入することができます

は私のコード

<?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

あなたはphpMyAdminをにしようとした場合、それが動作していますか?また、あなたのelse条件が動作しているかどうかを確認してください。 – Poria

+3

**警告**:PHPを学んでいるだけの方は、[mysql_query'](http://php.net/manual/en/function .mysql-query.php)インターフェイス。それはPHP 7で削除されたのでとてもひどいと危険です。[PDOのようなものは学ぶのが難しくない](http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps -pdo-for-database-access /)と[PHP The Right Way](http://www.phptherightway.com/)のようなガイドがベストプラクティスを説明しています。あなたのユーザーパラメータは**適切にエスケープされていません**(http://bobby-tables.com/php)、悪用可能な[SQLインジェクションバグ](http://bobby-tables.com/)があります。 – tadman

+0

now()を使用してください。 ITがあなたを助けます。 – RJParikh

答えて

2

で希望する場合は、必ずNOW()またはUTC_TIMESTAMP()を挿入することができます。

0

はそれを試してみてください -

<?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(); 


    } 

} 

?> 
関連する問題