本文介紹了如何解決 PHP 中的“無法通過引用傳遞參數"錯誤?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
這是我的代碼:
$stmt = $conn->mysqli->prepare('INSERT INTO photos (CaseNo, ImageName, CaptureTime, UploadTime) VALUES (?,?,?,?)');
$stmt->bind_param('isss', $caseno, $index.'.'.$extension, date('Y-m-d H:i:s'), date('Y-m-d H:i:s'));
我也試過這個:
$stmt = $conn->mysqli->prepare('INSERT INTO photos (CaseNo, ImageName, CaptureTime, UploadTime) VALUES (?,?,?,?)');
$captureTime = date('Y-m-d H:i:s');
$uploadTime = date('Y-m-d H:i:s');
$stmt->bind_param('isss', $caseno, $index.'.'.$extension, $captureTime, $uploadTime);
我收到錯誤:
致命錯誤:** 無法通過 **...文件路徑...行#中的引用傳遞參數 3
Fatal error:** Cannot pass parameter 3 by reference in **...file path...line #
請注意,CaptureTime 和 UploadeTime 具有數據類型 date.并忽略我傳遞的第 3 個和第 4 個參數的值相同的事實.
Please note that CaptureTime and UploadeTime have datatype date. And ignore the fact that I am passing the value of 3rd and 4th parameter same.
代碼有什么問題?
推薦答案
更改
$stmt->bind_param('isss', $caseno, $index.'.'.$extension, $captureTime, $uploadTime);
到
$isss = 'isss';
$indexExtention = $index.'.'.$extension
$stmt->bind_param($isss, $caseno, $indexExtention , $captureTime, $uploadTime);
我相信您必須傳遞變量而不是字符串.
I believe you have to pass variables rather than a string.
或者,如果您使用 PDO,您可以使用 bindvalue()
而不是 bindparam()
.
Or you could use bindvalue()
instead of bindparam()
if you're using PDO.
這篇關于如何解決 PHP 中的“無法通過引用傳遞參數"錯誤?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!
【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!