ここで何が間違っているかはわかりません。特に1
という行にあります。あなたがその文を準備する必要があり構文エラー - 何が間違っているかを見つけることができません
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ':username' at line 1
include ("params.php");
include ("$config");
$_POST = array_map('stripslashes', $_POST);
extract($_POST);
try {
$stmt = $db->query('SELECT username FROM members WHERE username = :username');
if ($stmt->rowCount() == 0) {
$msg = 'YOU ARE NOT REGISTERED !';
}
elseif ($stmt->rowCount() == 1) {
$msg = 'WELCOME ' . $username . ' !';
}
else {
$msg = 'SOMETHING WRONG - MORE THAN ONE USER';
}
echo $msg;
}
catch(PDOException $e) {
echo $e->getMessage();
}
try {
$stmt = $db->prepare('UPDATE members SET logged = :logged WHERE username = :username') ;
$stmt->execute(array(
':logged' => 1,
':username' => $username,
));
}
catch(PDOException $e) {
echo $e->getMessage();
}
における第二文の中でそうであるように、なぜあなたは 'にstripslashesを()'を使用している必要がありますか?準備されたステートメントを使用していて、どのAPIを使用して接続していますか? –