為什麼使用準備好的語句在 MySQL 中收到「變數數量與參數數量不符」錯誤?

Mary-Kate Olsen
發布: 2024-10-22 10:57:30
原創
714 人瀏覽過

Why Do I Receive

問題:為什麼我在 MySQL 中收到「bind_param:變數數量與參數數量不符」?

在使用 MySQL 的 PHP 腳本中,您面臨執行準備好的語句時出現問題並收到警告「變數數量與準備好的語句中的參數數量不符」。當準備好的語句中問號的數量與bind_param()方法中綁定的變數的數量不一致時,就會發生這種情況。

解決方案:

要解決此問題,請確保準備好的語句中問號的數量與傳遞給bind_param()的變數數量相符。以下是一個修正後的程式碼片段範例:

<code class="php">$stmt = $mysqli->prepare("SELECT DISTINCT model FROM vehicle_types WHERE year = ? AND make = ? ORDER by model");
$stmt->bind_param('is', $year, $make);
$stmt->execute();</code>
登入後複製

在此範例中,準備好的語句包含兩個問號,bind_param() 方法綁定兩個變數 $year 和 $make。 'is' 中的第一個字母指定第一個參數的類型(整數),第二個字母指定第二個參數的類型(字串)。

記住,在準備語句時,必須替換每個帶問號且不帶引號的變數。引號內的問號不會被解釋為佔位符。

以上是為什麼使用準備好的語句在 MySQL 中收到「變數數量與參數數量不符」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!