預存程序不能執行還是什麼情況,反正不能出現結果
require("../inc/hbmconn.php");//傳入vip 姓名$name=iconv("utf-8","gb2312",$_REQUEST['name']);$startTime="2012-04-01";$endTime="2012-04-03";$procedure = mssql_init("procGetVIPConsumeDetail",$conn);mssql_bind($procedure,"@vipConsumerFilter",$name, SQLVARCHAR); mssql_bind($procedure,"@startDate",$startTime, SQLDATETIME); mssql_bind($procedure,"@endDate",$endTime, SQLDATETIME); $resource = mssql_execute($procedure);mssql_free_statement($procedure);
不能執行,不知啥情況,路過的幫忙看看
回複討論(解決方案)
echo mssql_get_last_message();
看看有無錯誤資訊
echo mssql_get_last_message();
看看有無錯誤資訊
常量 SQLDATETIME 沒有定義
請確認你書寫的是否正確
你還可以 print_r(get_defined_constants());
看一下是否有類似的常量
最後那條錯誤資訊的含義不太清楚,可能是日期格式不對吧
//傳入vip 姓名$name=iconv("utf-8","gb2312",$_REQUEST['name']);//echo $name;$startTime="1970-01-01";$endTime=date("H-m-d");$procedure = mssql_init("procGetVIPConsumeDetail",$conn);mssql_bind($procedure,"@vipConsumerFilter",$name, SQLVARCHAR); mssql_bind($procedure,"@startDate",$startTime, SQLVARCHAR); mssql_bind($procedure,"@endDate",$endTime, SQLVARCHAR); $resource = mssql_execute($procedure);mssql_free_statement($procedure);
把日期也換成SQLVARCHAR 格式,莫名其妙的就好了...我那個去!