我已經在服務器上傳了一個PHP腳本。它所做的是繼續讀取數據庫(mySQL),並且如果DATE_OF_MATCH
和TIME_OF_MATCH
(這些是mySQL數據庫中的2個字段)等於服務器時間,它將執行一條消息。從mysql中匹配日期和時間 - 邏輯問題
字段表:都是從MATCH
表VARCHAR
ID, DATE_OF_MATCH, TIME_OF_MATCH, MATCH_NAME
一個記錄;
1 , 1/12/2012, 3:40, ManU vs Kaks
的問題是,我的選擇是錯誤的說法。我的$theDateAndTime
正在返回09:15:03PM
並且在數據庫中我有兩個單獨的日期和時間記錄。所以,我怎麼可以編輯選擇語句,這樣可以匹配對$theDateAndTime
代碼的日期和時間(由服務器返回):
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
date_default_timezone_set('America/New_York');
$theDateAndTime = date("h:i:sA")."\n";
$result = mysql_query("SELECT * FROM MATCH where DATE_OF_MATCH=".$theDateAndTime." and TIME_OF_MATCH=".$theDateAndTime."");
while(true){
if(result!=null){
while($row = mysql_fetch_array($result))
{
echo $row['MATCH_NAME'] ;
echo "<br />";
}
}
}
mysql_close($con);
?>
你是不是在引用您的SQL參數,也不是你逃避它(不是'date'是要返回多少需要轉義)。另外:**單挑!** PHP的下一個主要版本是*棄用* mysql_'系列函數。現在將是[切換到PDO](http://php.net/book.pdo)或[mysqli](http://php.net/book.mysqli)的好時機。碰巧使用這些選項提供的參數化佔位符將完全避免你在這裏遇到的問題。 – Charles
是否嘗試使用date(.theDateAndTime)和Time(。$ theDateAndTime)。 DATE()和TIME()是mysql函數。對不起,我不知道PHP,所以可能會有一些語法錯誤。參考http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html –