Это мой первый вопрос, так вот вот:Почему моя форма отправляется в мою базу данных, когда значения не удовлетворяют требованиям?
Всякий раз, когда я отправляю свою регистрационную форму, я отправляю данные через 3 чека (только 3 на данный момент). Однако, даже если представленные данные не соответствуют требованиям проверок, они все еще сохраняют значение в моей базе данных.
Еще один пример: если бы я отправил имя пользователя с числом символов менее 8 символов, отобразилась ошибка, однако значения все равно сохраняются. Пожалуйста, помогите.
<?php
//VARIABLES FOR POST DATA //OTHER VARIABLES
$username = $_POST['register_username']; $userlen = strlen($username);
$password = $_POST['register_password'];
$submit = $_POST['register_submit'];
if(isset($submit)){
if($password == $username){$errors[] = 'Same Username and Pass';}
if($userlen < 8){$errors[] = 'Username must be atleast 8 characters.';}
if($userlen > 32){$errors[] = 'Username must only contain 32 characters';}
else{
require 'db/connect.php';
$insertUser = "INSERT INTO users (username, password) VALUES ('$username','$password')";
mysql_query($insertUser);
}
}
?>
Я просто понял, что это может быть из-за того, что я использовал, если вместо elseif ... –
исправить структуру if-операторов (-ов) является ошибкой – Spade
Mysql устарел [использовать PDO или Mysqli] (http : //stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php) – jmattheis