Хорошо, ребята, поэтому я пытаюсь использовать следующий код для обновления некоторых значений для базы данных сервера игр.Число переменных не соответствует числу параметров - MySQLi
$db1 = "versound_store";
//connection to the database
$mysqli = new mysqli($hostname, $sqluser, $sqlpass, $db1);
if($stmt = $mysqli->prepare("UPDATE vxp_users SET tokens =?, xp =?, level =? WHERE steamid ='?'"))
{
$stmt->bind_param('isss', $tokens, $xp, $level, $steamid00);
$stmt->execute();
$stmt->close() or trigger_error($db->error);
}
else {
printf("Prep statment failed: %s\n", $mysqli->error);
}
$mysqli->close();
$db2 = "versound_stats";
$mysqli = new mysqli($hostname, $sqluser, $sqlpass, $db2);
if($stmt = $mysqli->prepare("UPDATE ttt_stats SET roundsplayed =?, playtime =? WHERE steamid ='?'"))
{
$stmt->bind_param('iis', $roundsplayed, $totalplaytime, $steamid00);
$stmt->execute();
$stmt->close() or trigger_error($db->error);
}
else {
printf("Prep statment failed: %s\n", $mysqli->error);
}
$mysqli->close();
Но, конечно же, для обоих запросов я получаю Number of variables doesn't match number of parameters in prepared statement on line 64
.
$ лексемы представляет собой число, как правило, от -50 до 10000.
$ хр это число обычно между -100 и 269000.
$ уровень представляет собой число, как правило, от 1 до 50.
$ roundsplayed это число выше 0.
$ totalplaytime это число обычно от 1 до 1000000.
$ steamid00 является строка formatt как STEAM_0: 1: 23456789.
Что я делаю неправильно?