2015-07-19 156 views
2

嗨我有這個問題,我嘗試了所有解決方案,我可以找到DATE_ADD和更多的這樣。因此,這裏是我的代碼..mysql插入當前日期+更多天

$create_time = date("Y-m-d H:i:s"); 
if (md5($_POST['norobot']) == $_SESSION['randomnr2']) 
{ 
    if ((strlen($usern) >= 5) && (strlen($pass) >= 5)&&(strlen($email) >= 12)&&(strlen($idcard)==7)) 
    { 
     $usr = mysql_query("Select * from account.account where login='$usern'"); 
     $ema = mysql_query("Select * from account.account where email='$email'"); 

     if ((mysql_num_rows($usr)==1)|| (mysql_num_rows($ema)==1)) 
     { 
      echo error("Cont sau email utilizate.Incercati altele sau click <a href='index.php?page=recuperare-pw'>aici</a> pentru recuperare parola."); 
     } 
     else 
     { 
      if ($_POST['read'] == "checked") 
      { 
       $rand = rand(99999,9999999999); 
       $cod_activ = md5($rand); 
       //$cod_activ= "1"; 
       mysql_query("Insert into account.account (Login,Password,Real_name,Social_id,Email,status,create_time,gold_expire,silver_expire,safebox_expire,autoloot_expire,fish_mind_expire,marriage_fast_expire,money_drop_rate_expire,coins,web_aktiviert) values('$usern',password('$pass'),'$name','$idcard','$email','OK','$create_time','2022-12-31 12:00:00','2022-12-31 12:00:00','2022-12-31 12:00:00','2022-12-31 12:00:00','2022-12-31 12:00:00','2022-12-31 12:00:00','2022-12-31 12:00:00','0','$cod_activ')") or die(mysql_error()); 
       echo succes('Cont creat cu succes.Va puteti loga acum!'); 

而不是2022-12-31 12:00:00我要添加當前日期+ 30天內的任何幫助嗎?我沒有想法。

回答

0

MySQL DATE_ADD會工作。

SELECT DATE_ADD(CURDATE(),INTERVAL 30 DAY) 

您的查詢將是:

mysql_query("Insert into account.account (Login,Password,Real_name,Social_id,Email,status,create_time,gold_expire,silver_expire,safebox_expire,autoloot_expire,fish_mind_expire,marriage_fast_expire,money_drop_rate_expire,coins,web_aktiviert) values('$usern',password('$pass'),'$name','$idcard','$email','OK','$create_time',DATE_ADD(CURDATE(),INTERVAL 30 DAY),DATE_ADD(CURDATE(),INTERVAL 30 DAY),DATE_ADD(CURDATE(),INTERVAL 30 DAY),DATE_ADD(CURDATE(),INTERVAL 30 DAY),DATE_ADD(CURDATE(),INTERVAL 30 DAY),DATE_ADD(CURDATE(),INTERVAL 30 DAY),DATE_ADD(CURDATE(),INTERVAL 30 DAY),'0','$cod_activ')") or die(mysql_error()); 

注:mysql_*功能被取消,並將在未來的版本中被刪除,使用mysqliPDO代替

UPDATE

使用CURRENT_TiMESTAMP而不是CURDATE()以防你需要日期時間。

SELECT DATE_ADD(CURRENT_TIMESTAMP,INTERVAL 30 DAY) 
+0

非常感謝您的回答,但我找到了另一個解決方案$ bonus_time = date(「Y-m-d H:i:s」,strtotime(「+ 7 day」));然後插入介紹db $ bonus_time,那麼我會升級我的遊戲網站,如果我將來保留它。我無法使用CURDATE sice,我需要全職工作。 –