2011-10-26 142 views
1

好吧,所以即時通訊嘗試讓php檢查文件上的日期是否超過當前日期,如果不是我希望它回顯消息,但我不斷收到此。錯誤請幫助解析錯誤:語法錯誤,意外的T_VARIABLE,期待'(

<?php 
$infosql = "SELECT * FROM premiersounds_users WHERE customer_id = $id"; 
$inforesult = mysql_query($infosql) or die(mysql_error()); 
$info = mysql_fetch_array($inforesult); 

//Get date from database 
echo $info['party_date']; 

//Get current date from server 
$format="%m/%d/%y"; 
$c_date=strftime($format); 
//set sessions 
$_SESSION['current_date'] = $c_date; 
$_SESSION['party_date'] = $p_date; 
echo $c_date; 

//Check is Current date = lockout date 
if $c_date <= $p_date { header("location:/Pages/my_info.php"); } else {echo 'Your account is locked out because your event is too close to allow online editing. Please contact your DJ.';} 
?> 
+0

您是否嘗試了「SELECT * FROM premiersounds_users WHERE customer_id =」+ $ id; ? – ysrb

+0

@ysrb:這不是他注意到的失敗。再加上變量是在雙引號內,所以它將完成與連接相同的事情。 – Josh

+0

您是否缺少<?php在您的代碼中,或者只是在您發佈的內容中? – NickLH

回答

3

if $c_date < $party_date

需求是:

if($c_date < $party_date)

+0

是正確的。 – afarazit

+0

非常感謝你我完全錯過了那8)! –

+0

@TylerRadlick:沒問題。你只需要診斷一下你的錯誤。 T_VARIABLE是PHP在解析腳本時用來表示變量的存在的標記。所以,因爲這是意想不到的,並且它期待着一個paren(從每個變量的左邊開始,然後問自己paren是否應該在邏輯上存在或不存在),這有助於分割代碼不要把它全部都塞在這樣一條線上 – Josh

1

你有兩個問題

這應該工作

$infosql = "SELECT * FROM premiersounds_users WHERE customer_id = '$id'"; 
$inforesult = mysql_query($infosql) or die(mysql_error()); 
$info = mysql_fetch_array($inforesult); 

//Get date from database 
echo $info['party_date']; 

//Get current date from server 
    $format="%m/%d/%y"; 
$c_date=strftime($format); 
    $_SESSION['current_date'] = $c_date; 
echo $c_date; 

//Check is Current date < lockout date 

//Problem Line// 
if ($c_date <= $party_date) { header("location:/Pages/my_info.php"); } else {echo 'Your account is  locked out because you event is too close to allow online editing. Please contact your DJ.';} 

customer_id = $id"; 

應該

customer_id = '$id'"; 

if $c_date <= $party_date 

應該是

if ($c_date <= $party_date) 
相關問題