Добрый день, есть форма как сделать , что -бы после нажатия отправить перенаправляла на другую страницу ?Если можно пример Код (Text): <form method="POST" action=""> <input name="FAQ1" type="text" placeholder="Ф.И.О" required/><br /> <input name="adress1" type="text" placeholder="Ведите ваш адресс в формате Индекс,Город,улица дом" required/><br /> <input name="telephone1" id="phone" type="text" placeholder="Ваш телефон" required/><br /> <input name="mail1" type="email" placeholder="Ваш @mail" required/><br /> <input type="submit" name="add" value="Отправить" /> </form>
Если вы про то, чтоб форму отправить - то указывайте в action PHP: <form method="POST" action="script2.php"> если о перенаправлении в скрипте после обработки формы - то PHP: header("Location: script3.php"); exit();
Код (Javascript): function goURL(url, blank) { if (blank) { window.open(url, '_blank'); } else { document.location.href = url; } } blank = true - открывается новая вкладка, false - идем на нужный адрес. ADSoft, каким образом в js вставить Ваш код с перенаправлением на php?
Окуратно со всеми скриптами. В варианте @ADSoft, хотя бы все сработает и это будет самым легким без js. Если с js то сначало надо запретить форме посылать данные. JS их обрабатывать и слать обработчику, и от результата вывести ошибку или в случае успеха переадресовать.
Так ADSoft, судя по всему, дал верный ответ на вопрос, указав в action урл страницы, которая откроется и получит содержимое формы. Я "приколупался" к следующему коду с header на php, который, в данном случае, ни в какие ворота сюда не лезет - в таких случаях нужно переадресовывать при помощи js, а не смешивать js и php. Да, само собой, пост или гет нужно запретить и вешать обработку на отдельную функцию с аяксом (или без). ПыСы: что-то этот аякс меня преследует. Что ни комментарий, то вечно его вспоминаю)
а чем header не нравится ? вполне можно использовать в конце работы обработчика. (Его нельзя использовать если какой то ответ обработчик возвращает, то есть выводит, но это тоже решаемое)
Пните меня ногой, но если в исходнике встретится <?php header("Location: script3.php"); ?> , то пользователь даже не увидит страницу с формой, а сразу попадет на script3.php или получит ошибку, т.к. "заголовки уже были отправлены". Можно пример?
Так смотри есть форма назовем index.html и в форме пишем HTML: <form method="POST" action="script2.php"> человек нажимаем на кнопку. и post запрос уходит в script2.php там уже PHP: <?php //получаем пост данные /* *Что то с ними делаем *ку да то добавляем *получаем результат в переменную */ if($result){ header("Location: ok.html"); }else{ header("Location: error.php"); } exit(); --- Добавлено --- Это грубый пример, конечно. но все же
Тю блин, дошло наконец-то. Не, я так не играю) Вот, накидал на коленке, насчет чего я возмущался (http://acso.com.ua/chk_header.php): Код (Text): <html><head><title>Header test</title></head><body> <?php if (isset($_GET['page2'])) echo "second page"; else echo "first page"; ?> <script> function check() { if (false) { <?php header("Location: chk_header.php?page2=go"); ?> } } </script> </body></html> Естественно, получим в дыню )) (Ctrl-U)
Ну я js редко пытаюсь использовать, и только там где он нужен. Я привел пример как полностью без js обойтись) В чатах так нельзя конечно(еще как можно, но не 2000 сейчас)
Прочтите предыдущие посты, а не только этот. Смысл как раз был в том, что так делать нельзя, и я привел пример, что будет, если все же так сделать)
Ну так я и написал, что не догнал мысль, а подумал, что предлагается ЭТО. Перенаправление средствами php после обработки формы не использую, пост с перезагрузкой страницы также - вместо этого предпочитаю аякс с обработкой ответа при помощи js. Поэтому сразу и подумал, что предлагается безумное решение с header посреди js.