Die Anzahl der Parameter in der vorbereiteten Anweisung stimmt nicht mit der Anzahl der durch bind_param gebundenen Variablen überein
<p>Hier ist mein Codeausschnitt: </p>
<pre class="brush:php;toolbar:false;">$stmt = $mysqli->prepare("SELECT DISTINCT model FROM Vehicle_types
WHERE year = ? AND make = '?' ORDER by model");
$stmt->bind_param('is', $year, $make);
$stmt->execute();</pre>
<p>Wenn ich die Werte für $year und $make ausgebe, kann ich die Werte sehen, aber wenn ich dieses Skript ausführe, erhalte ich einen Nullwert und die folgende Warnung erscheint in meiner Protokolldatei: </ p> ;
<blockquote>
<p>PHP-Warnung: mysqli_stmt::bind_param(): Anzahl der Variablen stimmt nicht mit der Anzahl der Parameter in der vorbereiteten Anweisung überein</p>
</blockquote>
<p>In diesem Fall ist der Jahrestyp in der Datenbank int(10). Ich habe versucht, ihn zur Übergabe in den Typ int zu konvertieren, und make ist ein varchar(20) mit der Codierung utf8_unicode_ci. Gibt es etwas, das mir fehlt? </p>