ユーザー名とパスワードを使用してログインするための簡単なフォームがあります。ホワイトリストを適用して、特定の文字のみを許可したい。誰かがこれを必要としているかどうかはわかりませんが、ユーザー名とパスワードを取得するためのコードは次のとおりです。
$stmt = $conn2->prepare("SELECT username FROM users WHERE username = ? AND password = ?");
$stmt->bind_param("ss", $username, $password);
$stmt->execute();
$stmt->store_result();
私はこのようなものを取り入れますか?
preg_replace( "/[^a-zA-Z0-9_]/", "", $stringToFilter );
もしそうなら、コード内のどこにそれを含めますか?また、ユーザーがホワイトリストにあるもの以外のものを入力しようとするとどうなりますか?
追加:登録中に、ユーザー名とパスワードを保存するためにINSERTを使用している場合はどうでしょうか。
//insert data
$stmt = $conn2->prepare("INSERT INTO users (username, email, password) VALUES (?, ?, ?)");
//bind the parameters
$stmt->bind_param('sss', $username, $email, $password);