Всем привет, может не правильно указал название темы, но сейчас все опишу. В общем делаю я сайт на диплом. Есть страница регистрации, после того как клиент успешно зарегистрировался его перекидает на страницу где пишет В коде я так понимаю это записано тут Код (PHP): $result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')"); // Проверяем, есть ли ошибки if ($result2=='TRUE') { echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. <a href='index.php'>Главная страница</a>"; } Что я хочу. Что бы например меня перенаправляло на страницу которую я впишу, на пример это будет page2.php Вот весь код Код (PHP): <HTML> <HEAD> <meta charset="utf-8"> <?php if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} } //заносим введенный пользователем логин в переменную $login, если он пустой, то уничтожаем переменную if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} } //заносим введенный пользователем пароль в переменную $password, если он пустой, то уничтожаем переменную if (empty($login) or empty($password)) //если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт { exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля! <a href='reg.php'>Сторінка реєстрації</a>"); } //если логин и пароль введены, то обрабатываем их, чтобы теги и скрипты не работали, мало ли что люди могут ввести $login = stripslashes($login); $login = htmlspecialchars($login); $password = stripslashes($password); $password = htmlspecialchars($password); //удаляем лишние пробелы $login = trim($login); $password = trim($password); // подключаемся к базе include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь // проверка на существование пользователя с таким же логином $result = mysql_query("SELECT id FROM users WHERE login='$login'",$db); $myrow = mysql_fetch_array($result); if (!empty($myrow['id'])) { exit ("Извините, введённый вами логин уже зарегистрирован. Введите другой логин. <a href='reg.php'>Сторінка реєстрації</a>"); } // если такого нет, то сохраняем данные $result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')"); // Проверяем, есть ли ошибки if ($result2=='TRUE') { echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. <a href='index.php'>Главная страница</a>"; } else { echo "Ошибка! Вы не зарегистрированы.<a href='reg.php'>Сторінка реєстрації</a>"; } ?> </HTML> Если что то не правильно описал, извиняйте. Если еще нужна какая то информация, пишите, добавлю. PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
вставь header("location: page2.php"); туда, где тебе нужно перенаправление. Добавлено спустя 1 минуту 16 секунд: однако такой момент сработает только в том случае, если перед этим у тебя нет никаких выводов с помощью echo/print
Перенаправление можно сделать с помощью заголовка location (http://php.net/header) или с помощью мета-тега в html.
Вот такая вот ересть получается, я так понимаю проблема в том что у меня до этого есть выводы с помощью echo/print Ошибка в 33 строке тоесть та что я изменил Код (PHP): $result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')"); // Проверяем, есть ли ошибки if ($result2=='TRUE') { header("location: page2.php"); //33 строка } PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
ахтунг! В будущем mysql_query может кинуть ошибку. так зачем делать? вы сами подумайте Если хотите сначала показать какой то текст на страничке а потом перенаправить, то meta refresh Код (PHP): <meta http-equiv="refresh" content="2;URL='http://thetudors.example.com/'" /> //Через две секунду будет перенаправление на http://thetudors.example.com/ в другом случае, можно использовать header Код (PHP): header('Location: http://www.example.com/'); http://php.net/manual/ru/function.header
если использую это, то появляется такая ошибка записал это так Код (PHP): $result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')"); // Проверяем, есть ли ошибки if ($result2=='TRUE') { header("location: page2.php"); } Вы извините, если что, просто делал все при помощи гугла и всяких видео уроков. PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
тебе vs дал ссылку почитай почему так. Ну, кто делает, а кто нет. Ведь бывают случаи когда надо.) Вообще я использую header переадрессацию, и на той же странице приветстую пользователя.
тебе vs дал ссылку почитай почему так. Убрал HTML теги, не помогло, я так понимаю проблему может создавать это Код (PHP): if (empty($login) or empty($password)) //если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт { exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля! <a href='reg.php'>Сторінка реєстрації</a>"); } Ехит тоже как то влияет? Или нет. Вы извините что надоедаю. Просто хочу разобраться) PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
Ну это и есть строка 33 Код (PHP): $result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')"); // Проверяем, есть ли ошибки if ($result2=='TRUE') { header("location: page2.php"); // строка 33 } Добавлено спустя 19 минут 12 секунд: Всем спасибо. Проблему решил. Убрал Код (PHP): <HTML> <HEAD> <meta charset="utf-8"> Тему можно крыть. PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]