В чем проблема друзья ? Notice: Undefined index: login Код (PHP): <form method="post" action="" id="registr_form"> <label>Login</label> <input type="text" maxlength="255" name="login" class="registr_input"/> </form> Код (PHP): $login = $_POST['login']; PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
Вангую, что в этот момент форма не отправлена. Можешь обернуть кусок где обрабатываются данные формы в такой блок: Код (PHP): if ($_SERVER['REQUEST_METHOD'] == 'POST') { // только в этом случае что-то делаешь c login и т.п. }
Нее это у меня есть глянь Код (PHP): error_reporting(E_ALL); include("engine/php_forms/dbconnect.php"); $login = $_POST['login']; $name = $_POST['name']; $surname = $_POST['surname']; $email = $_POST['email']; $password = $_POST['password']; $conpassword = $_POST['conpassword']; if($password == $conpassword && $login = $_POST['login'] && $name = $_POST['name'] && $surname = $_POST['surname'] && $email = $_POST['email'] && $password = $_POST['password'] && $conpassword = $_POST['conpassword']){ $result = $mysqli_query("SELECT id FROM users WHERE login = '$login' && email = '$email', $DBC") ; $myrow = mysqli_fetch_array($result); if (!empty($myrow['id'])) { exit ("Sory but this login is already registered! Please type other login "); } $query = "INSERT INTO users (login, name, surname, email, password) VALUES('$login', '$name', '$surname', '$email', '$password')"; mysqli_query($query); if ($query=='TRUE'){ echo "You are successfully registered! Now you can visit the website. <a href='index.php'>Home Page</a>"; } else { echo "Mistake! You aren't registered."; } }else;
Не понял, что "это" у тебя есть? Прочитай еще раз и сравни со своим. Что не понятно — спроси. Добавлено спустя 1 минуту 46 секунд: Ктати, есть и другие косяки. Твой код ужасен.
Ну ты про if не говариш ? или про $_SERVER ? Если $_SERVER зачем мне это так как я хочу форму регистрации создать зачем мне $_SERVER ?
Затем, что если форма еще не отправлена, никаких $_POST['login'] не существует. Об этом написано в ошибке. Когда форма еще не отправлена, нам ничего не надо делать с данными. Их нет! Моя проверка нужна чтобы эта ошибка не возникала. Теперь понял?
Да понял но вот еше вопрос я не понел что прописать тут или что делать ? (// только в этом случае что-то делаешь c login и т.п.)
Манвел-джан, туда надо прописать все твои присваивания типа $login = $_POST['login'] и всё, что идет потом, всю обработку данных. ВСЁ КРОМЕ САМОЙ ФОРМЫ
Спасибо большое братан ты помог мне но вот что случилось код сделал так Код (PHP): <?php error_reporting(E_ALL); include("engine/php_forms/dbconnect.php"); if ($_SERVER['REQUEST_METHOD'] == 'POST') { $login = $_POST['login']; $name = $_POST['name']; $surname = $_POST['surname']; $email = $_POST['email']; $password = $_POST['password']; $conpassword = $_POST['conpassword']; if($password == $conpassword && $login = $_POST['login'] && $name = $_POST['name'] && $surname = $_POST['surname'] && $email = $_POST['email'] && $password = $_POST['password'] && $conpassword = $_POST['conpassword']){ $result = $mysqli_query("SELECT id FROM users WHERE login = '$login' && email = '$email', $DBC") ; $myrow = mysqli_fetch_array($result); if (!empty($myrow['id'])) { exit ("Sory but this login is already registered! Please type other login "); } $query = "INSERT INTO users (login, name, surname, email, password) VALUES('$login', '$name', '$surname', '$email', '$password')"; mysqli_query($query); if ($query=='TRUE'){ echo "You are successfully registered! Now you can visit the website. <a href='index.php'>Home Page</a>"; } else { echo "Mistake! You aren't registered."; } }else; } ?> а вот сейчас при нажатии на кнопки регистрации напишет вот эту ошибку Notice: Undefined variable: mysqli_query in C:\xampp\htdocs\blog\engine\php_forms\registr_user.php on line 14 Fatal error: Function name must be a string in C:\xampp\htdocs\blog\engine\php_forms\registr_user.php on line 14
$mysqli_query это имя переменной, т.к. переменные в PHP начинаются со знака доллара. а тебе нужен вызов функции: mysqli_query есть и другие косяки, но давай ты уже сам будешь разбираться. учебник тебе нужен и постепенное изучение. шаг за шагом. не бери в рот больше, чем можешь проглатить — народная мудрость.
ладно только вот последный вопрос и все мой php файл регистрации находится здесь ("engine/php_forms/registr_user.php") мне в action="" написать этот строка чтобы цепить или просто в начале страници include сделать ? Код (Text): <form method="post" action="" id="registr_form">
Когда action пустая строка или вобще нет такого параметра в <form>, то данные отправляются по тому же адресу, по которому располагается сама форма. Если форма и скрипт-обработчик находятся в разных файлах — тогда адрес обработчика необходимо написать в action.