Если submit нажата, надо проверить поля имени и адреса, заполнены ли. Если не заполнены, просто выдать ту же страницу.
<form method="POST" name="form" action="http://127.0.0.1/studio/index.php?option=com_content&view=article&id=8&Itemid=9"><br><br>
<div id="head5"><span style="color:#fff">
<b>Персональные данные</b></span></div><br>
Представьтесь, пожалуйста<br><span style="color:red">(обязательно): </span>
<input type="text" name="fio" size="20"><br>
Ваш e-mail<span style="color: red; ">(обязательно):</span>
<input type="text" name="email" size="20"><br>
<input type="submit" value="Рассчитать создание сайта" onclick="1"></form>
<?php
if (isset($_POST['submit'])){
if ($_POST['fio']==''|| $_POST['email']=='')
{
header ('Location: http://127.0.0.1/studio/index.php?option=com_content&view=article&id=7&Itemid=10');
}
}
?>
А попадаю, куда форма посылает http://127.0.0.1/studio/index.php?option=c...=8&Itemid=9
Спустя 2 минуты, 32 секунды (22.06.2011 - 17:54) Winston написал(а):
Так ?
Свернутый текст
<form method="POST" name="form" action="?"><br><br>
<div id="head5"><span style="color:#fff">
<b>Персональные данные</b></span></div><br>
Представьтесь, пожалуйста<br><span style="color:red">(обязательно): </span>
<input type="text" name="fio" size="20"><br>
Ваш e-mail<span style="color: red; ">(обязательно):</span>
<input type="text" name="email" size="20"><br>
<input type="submit" value="Рассчитать создание сайта" onclick="1"></form>
Свернутый текст
<?php
if (isset($_POST['submit'])){
if (empty($_POST['fio'])|| empty($_POST['email']))
{
header ('Location: http://127.0.0.1/studio/index.php?option=com_content&view=article&id=7&Itemid=10');
}
}
?>
Спустя 29 минут, 42 секунды (22.06.2011 - 18:23) Alisa Selezneva написал(а):
Не, все равно кидает по action=" http://127.0.0.1/studio/index.php?option=c...&Itemid=9" (
вместо что бы остаться на месте, хоть и с перезагрузкой
вместо что бы остаться на месте, хоть и с перезагрузкой
Спустя 15 минут, 43 секунды (22.06.2011 - 18:39) phz написал(а):
Оставьте пустым action=""
Спустя 19 минут, 54 секунды (22.06.2011 - 18:59) Alisa Selezneva написал(а):
Если оставить action='' пустым, и сделать так:
то заданное условие обрабатывается, кроме той страницы, куда ведет переадресация. На следующей странице обрабатывается форма с выводом выбранного на экран, но если оставить action пустым, то обработка не выводится (
<?php
if (isset($_POST['submit'])){
if (!empty($_POST['fio'])|| !empty($_POST['email']))
{
header ('Location: http://127.0.0.1/studio/index.php?option=com_content&view=article&id=8&Itemid=9');
} }
?>
то заданное условие обрабатывается, кроме той страницы, куда ведет переадресация. На следующей странице обрабатывается форма с выводом выбранного на экран, но если оставить action пустым, то обработка не выводится (
Спустя 7 минут, 4 секунды (22.06.2011 - 19:06) phz написал(а):
Добавьте name="submit" в кнопку:
Проверить что пер. переменные:
<input type="submit" value="Рассчитать создание сайта" onclick="1" name="submit">
Проверить что пер. переменные:
<?php print_r($_POST);?>
Спустя 41 минута, 19 секунд (22.06.2011 - 19:47) Alisa Selezneva написал(а):
вроде что-то передают: Array ( [a] => Array ( [99] => 0 [10] => нет [77] => домен [18] => [100] => ) [fio] => dfdsf [email] => [submit] => Рассчитать создание сайта [layout] => default [view] => article )
Получается так: есть 2 страницы в cms Joomla
1 вариант - на первой форма html, если форма с пустым action, то скрипт на первой стр обрабатывает условие, если поля имя и адрес не заполнены, скрипт возвращает ту же страницу, если заполнены - перенаправляет на 2 страницу.
На 2 странице другой скрипт должен выводить все отмеченные поля на первой странице и общую сумму заказа. Но при пустом action это не происходит. Скрипт на 2 странице не работает.
2 вариант - если форма с action="http:/ адрес второй страницы", то скрипт на первой не работает
зато работает скрипт на второй странице. Фух.
Получается так: есть 2 страницы в cms Joomla
1 вариант - на первой форма html, если форма с пустым action, то скрипт на первой стр обрабатывает условие, если поля имя и адрес не заполнены, скрипт возвращает ту же страницу, если заполнены - перенаправляет на 2 страницу.
На 2 странице другой скрипт должен выводить все отмеченные поля на первой странице и общую сумму заказа. Но при пустом action это не происходит. Скрипт на 2 странице не работает.
2 вариант - если форма с action="http:/ адрес второй страницы", то скрипт на первой не работает
<?php
if (isset($_POST['submit'])){
if (empty($_POST['fio'])|| empty($_POST['email']))
{
echo'Заполните, пожалуйста, поля!';
}}
?>
зато работает скрипт на второй странице. Фух.
Спустя 1 час, 34 минуты, 23 секунды (22.06.2011 - 21:22) Alisa Selezneva написал(а):
Вот что сделала:
Только сообщение выводится, нажимаем ОК, а дальше все равно переадресовывает на 2 страницу.
Как сделать, что бы пока имя не напишешь, никуда не попадешь?
<form method="POST" name="form" action="http://127.0.0.1/studio/index.php?option=com_content&view=article&id=8&Itemid=9" onsubmit="formfre(form.fio)">
Представьтесь пожалуйста<input type="text" name="fio" size="20" id="fio"><br>
Ваш e-mail
<input type="text" name="email" size="20"><br>
<input type="submit" name="submit" value="Отправить"></div></form>
<script language="JavaScript">
function formfre(f) {
if (f.value == "") {
alert ("Перед отправкой поле 'имя' должно быть заполнено");
return false;
}
else {
return true;
}
}
Только сообщение выводится, нажимаем ОК, а дальше все равно переадресовывает на 2 страницу.
Как сделать, что бы пока имя не напишешь, никуда не попадешь?
Спустя 32 минуты (22.06.2011 - 21:54) ИНСИ написал(а):
Цитата |
if (!empty($_POST['fio'])|| !empty($_POST['email'])) |
Использовать empty в данном случае неправильно... Что будет если будет введено число 0?? Тогда проверка не будет работать.
Alisa Selezneva попробуй так:
<script>
function checkForm() {
var fio = document.getElementById('fio');
var email = document.getElementById('email');
if(fio.value == '' or email.value == '') {
alert("Перед отправкой поле 'имя' и 'email' должны быть заполнены");
return false;
} else {
return true;
}
}
</script>
<form method="POST" name="form" action="" onsubmit="return checkForm();">
Представьтесь пожалуйста <input type="text" name="fio" size="20" id="fio"><br>
Ваш e-mail <input type="text" name="email" id="email" size="20"><br>
<input type="submit" name="submit" value="Отправить">
</form>
Спустя 4 минуты, 10 секунд (22.06.2011 - 21:58) Игорь_Vasinsky написал(а):
а мелафон то где???
Спустя 9 минут, 6 секунд (22.06.2011 - 22:07) ИНСИ написал(а):
Цитата |
а мелафон то где??? dry.gif |
Не понял, что имеешь в виду?
Спустя 20 минут, 55 секунд (22.06.2011 - 22:28) Alisa Selezneva написал(а):
Миелофон космические пираты украли)
Вот так работает, только не знаю как поле email добавить, что бы JS и его обрабатывал:
Вот так работает, только не знаю как поле email добавить, что бы JS и его обрабатывал:
<script type="text/javascript">
function formfre() {
if (document.getElementById("fio").value == "") alert("Заполни поля, чувак!");
else document.getElementById("someForm").submit();
}
</script>
Спустя 8 часов, 11 секунд (23.06.2011 - 06:28) Игорь_Vasinsky написал(а):
У ТС ник сам за себя говорит
Спустя 3 часа, 4 минуты, 52 секунды (23.06.2011 - 09:33) ИНСИ написал(а):
Alisa Selezneva мой вариант не работает? :) Или ты его не пыталась использовать? :)
По вопросу, то так:
По вопросу, то так:
<script type="text/javascript">
function formfre() {
if(document.getElementById("fio").value == "") alert("Заполни имя, чувак!");
else if(document.getElementById("email").value == "") alert("Заполни email, чувак!");
else document.getElementById("someForm").submit();
}
</script>
Спустя 3 часа, 38 минут, 17 секунд (23.06.2011 - 13:11) Alisa Selezneva написал(а):
velbox, конечно пыталась. Но не получилось.
Спасибо за последний вариант. Работает супер!
Спасибо за последний вариант. Работает супер!