在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/云計(jì)算  PHP  數(shù)據(jù)庫(kù)/ php預(yù)處理語(yǔ)句的get_result()有版本差異嗎?

php預(yù)處理語(yǔ)句的get_result()有版本差異嗎?

問題已解決,誰tm能想到,竟然是字符編碼問題,忘記設(shè)置字符編碼,賦值遇到異常編碼時(shí),可能造成了內(nèi)存泄露,具體可看我知乎上的自答。感謝各位的幫助和建議!

我在phpsdudy上用的是5.4.5,正常運(yùn)行,切換到5.5.385.3.29都歇菜,上傳到我的阿里云虛擬主機(jī)上,不管怎么設(shè)置版本,沒卵用。直接報(bào)500,查BUG都不知道從哪下手。

經(jīng)過我的二分法刪代碼大法,我發(fā)現(xiàn),bug就是在一個(gè)預(yù)處理語(yǔ)句上:

$sql = "select * from `$table_a` where `title` like ? or `content` like ? $order_sql limit " . $pageSize * ($currentPage - 1) . ", $pageSize";
$stmt = $mysqli -> prepare($sql);
$temp = "'%$searchContent%'";
$stmt -> bind_param('ss', $temp, $temp);
$stmt -> execute();
$result = $stmt -> get_result();  // 就是這句?。。“次业睦斫?,他就算數(shù)據(jù)庫(kù)里沒找到東西,頂天給我個(gè)error,不能500吧?

刪掉這句,一切ok,加上就報(bào)500,路過大神幫忙看看唄。

(因?yàn)榘⒗镌铺摂M主機(jī)上只有5.2-5.54個(gè)版本,我就選了個(gè)中間的,就是怕版本不兼容,誰知道。。。)

回答
編輯回答
別瞎鬧

嘗試把版本改成 5.4 以上再看看。


剛才看了官方文檔發(fā)現(xiàn)了這個(gè) PHP: mysqli_stmt::get_result

Available only with mysqlnd.

并且我自己在官方文檔上找了個(gè)例子試了一下:

Fatal error: Call to undefined method mysqli_stmt::get_result() in ...

出現(xiàn)上面這個(gè)錯(cuò)誤。

2017年12月14日 12:25
編輯回答
蔚藍(lán)色

服務(wù)器會(huì)對(duì)異常的響應(yīng)碼記錄的
查一下服務(wù)器的error日志就好了

2017年10月20日 02:17
編輯回答
失心人

問題已解決,誰tm能想到,竟然是字符編碼問題,忘記設(shè)置字符編碼,賦值遇到異常編碼時(shí),可能造成了內(nèi)存泄露,具體可看我知乎上的自答。感謝各位的幫助和建議!

2017年5月29日 16:50