2014-10-30 118 views
0

您好我是PHP的初學者,我嘗試使用日期列從表(billing_details)中檢索數據(單列之間的兩個日期之間即預訂)下面無法從日期列中檢索日期 - PHP Mysql

是源代碼

$from = mysql_real_escape_string($_POST['from']); 
$to = mysql_real_escape_string($_POST['to']); 
$from = date("d-m-Y", strtotime($from)); 
$to = date("d-m-Y", strtotime($to)); 

echo $from; 

$sql = mysql_query("select * from billing_details where SRF ='$_POST[srf]' or Service_Type ='$_POST[service]' or Status ='$_POST[status]' or Branch ='$_POST[branch]' or DATE(`Booking`) between '".$from."' and '".$to."'"); 

![I have select two different dates to get datas between the selected dates , but nothing is retrieved, only the echo $from is retrieved the the selected date][1] 


Kindly help me to solve this issue, Thanks in advance 

Regards, 
Abdul hameed 

回答

0

你的日期格式不正確,應該是'Y-m-d',否則mysql將無法識別它。學習習慣那種格式:)

此外,既然你是一個初學者請注意,你應該檢查strtotime返回。它的評估爲false然後輸入無效,並將其傳遞給date()函數將導致1969-12-31我相信

+0

哇,太棒了,我已經改變了日期類型從$從=日期(「d-m-Y」,strtotime($從)); to $ from = date(「Y-m-d」,strtotime($ from));其工作完美,感謝橄欖威廉姆斯 – 2014-10-30 07:42:53

+0

不客氣。一定要花時間閱讀php.net/date和/ strtotime來學習這些功能 – 2014-10-30 07:47:23

+0

哦,如果這個答案是幫助你(或另一個)的答案,請點擊支票作爲接受的答案。謝謝 – 2014-10-30 07:49:21

0

我相信你有一個變量賦值給變量$ _ POST,而不是把在那樣的。

編輯:

$sql = mysql_query("select * from billing_details where SRF ='$_POST[srf]' or Service_Type ='$_POST[service]' or Status ='$_POST[status]' or Branch ='$_POST[branch]' or DATE(`Booking`) between '".$from."' and '".$to."'"); 

爲了您的$ _ POST [SRF]和$ _ POST [服務],把像這樣:

$srf = $_POST['srf']; 
$service = $_POST['service']; 

$sql = mysql_query("SELECT * FROM billing_details WHERE SRF = '$srf' or Service_Type = '$service'.... etc etc") 
+0

我已經像你的消息$ _POST [from]和$ _POST [to]但沒有改善結果相同 – 2014-10-30 07:35:58

+0

$ from = $ _POST ['form']; $ to = $ _POST ['to']; – FortMauris 2014-10-30 07:36:40

+0

未定義的索引:第164行的C:\ wamp \ www \ Zimson \ searchdata.php中的表格行號164表示$ from = $ _POST ['form']; – 2014-10-30 07:38:11

0

你缺少在你的指數變化單一quete您的查詢是這樣的

$sql = mysql_query("select * from billing_details where SRF ='".$_POST['srf']."' or Service_Type ='".$_POST['service']."' or Status ='".$_POST['status']."' or Branch ='".$_POST['branch']."' or DATE(`Booking`) between '".$from."' and '".$to."'") or die(mysql_error()); 

不要直接使用Global int o您的查詢。

學習mysqliPDO由於mysql被降級。

+0

感謝您的快速回復Mr.Arif先生,我改變了代碼,但結果相同。 – 2014-10-30 07:33:33

+0

沒有不工作我得到空的頁面只有 – 2014-10-30 07:39:14

+0

我怎麼能在這裏分享我的屏幕截圖,以便我可以告訴你結果頁面 – 2014-10-30 07:39:37