我有一个简单的表单,使用用户名和密码登录.我想应用白名单只允许某些字符.我不知道是否有人要求这个,但这里是检索用户名和密码的代码:
$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);