Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Подтверждение
 
 автор: EnD   (06.06.2006 в 01:29)   письмо автору
 
 

Как осуществить чтобы при заполнении формы, в конце надо было поставить галочку, типа С условиями договора согласен, а без галочки выводилась ошибка, и просьба поставить галку?

   
 
 автор: targa   (06.06.2006 в 02:14)   письмо автору
 
   для: EnD   (06.06.2006 в 01:29)
 

Ну примерно так


<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Новая страница 1</title>
<script language="javascript" type="text/javascript">
<!--
function soglas(toForm)
{
    if (!toForm.chkSoglas.checked)
    {
        alert('Если Вы не согласны, зачем подписываете?');
        return false;
    }
    else return true;
}
//-->
</script>
</head>

<body>
<p>Типа договор</p>
<form method="post" action="obrab.php" onsubmit=" return soglas(this)">
    <input type="checkbox" name="chkSoglas" value="1"><br>
    <input type="submit" value="подписать договор" name="B1">
</form>

</body>

</html>

   
 
 автор: EnD   (06.06.2006 в 02:20)   письмо автору
 
   для: targa   (06.06.2006 в 02:14)
 

А на php это никак не осуществимо?

   
 
 автор: targa   (06.06.2006 в 02:27)   письмо автору
 
   для: EnD   (06.06.2006 в 02:20)
 

PHP - серверный язык, поэтому врядли.

Разве что вы будете без проверки отправлять форму файлу obrab.php, а там анализировать значение chkSoaglas если == 1, то все оки и форму заносим/обрабатываем. Если нет - сообщение Если Вы не согласны, зачем подписываете?.

   
 
 автор: EnD   (06.06.2006 в 02:32)   письмо автору
 
   для: targa   (06.06.2006 в 02:27)
 


<html> --- это страница с формой?

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> 
<title>Новая страница 1</title> 
<script language="javascript" type="text/javascript"> 
<!-- 
function soglas(toForm) --- тут функцию назвать мона как хочешь?

    if (!toForm.chkSoglas.checked) --- это name checkbox'а?
    { 
        alert('Если Вы не согласны, зачем подписываете?'); 
        return false; 
    } 
    else return true; 

//--> 
</script> 
</head> 

<body> 
<p>Типа договор</p> 
<form method="post" action="obrab.php" onsubmit=" return soglas(this)"> 
    <input type="checkbox" name="chkSoglas" value="1"><br> --- это галочка Я согласен?
    <input type="submit" value="подписать договор" name="B1">  --- а это кнопка отправить? так?
</form> 

</body> 

</html> 

   
 
 автор: targa   (06.06.2006 в 02:48)   письмо автору
 
   для: EnD   (06.06.2006 в 02:32)
 

>это страница с формой?
Ну примерно да.
Там где <p>Типа договор</p> должен быть Ваш договор.

А уже в obrab.php (или как вы его назвали) обработка полученных данных из формы.

   
 
 автор: EnD   (06.06.2006 в 02:58)   письмо автору
 
   для: targa   (06.06.2006 в 02:48)
 

Ага, спасибо, и еще одно уточнение, договор ведь я с таким же успехом могу поместить куда угодно на сайте, в смысле совсем не обязательно его присутствие на странице с формой?

   
 
 автор: targa   (06.06.2006 в 03:39)   письмо автору
 
   для: EnD   (06.06.2006 в 02:58)
 

Ну дак это на ваше усмотрение.
Я аналогичную задачу делал. Выглядело примерно так.

Договор
1.
......
2.
......
3.
......
Форма (куда вбиваются реквизиты контрагента)
Галочка "я согласен"
кнопка [подписать договор]

Текст договора можно конечно и куда то отдельно поместить, но нужно как минимум дать ссылку на текст договора. Но мне кажется более логичным и юзабельным первый вариант.

   
 
 автор: valenok   (06.06.2006 в 07:45)   письмо автору
 
   для: targa   (06.06.2006 в 03:39)
 

<html> 

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> 
<title>Новая страница 1</title> 
<script language="javascript" type="text/javascript"> 
<!-- 
function soglas(toForm) 

    if (!toForm.chkSoglas.checked) 
    { 
        alert('Если Вы не согласны, зачем подписываете?'); 
        return false; 
    } 
    else return true; 

//--> 
</script> 
</head> 

<body> 
<p><div style="cursor:hand;" onclick="javascript:window.open('dogovor.html');">Договор</div></p> 
<form method="post" action="obrab.php" onsubmit=" return soglas(this)"> 
    <input type="checkbox" name="chkSoglas" value="1"><br> 
    <input type="submit" value="подписать договор" name="B1"> 
</form> 

</body> 

</html>

   
 
 автор: EnD   (06.06.2006 в 10:01)   письмо автору
 
   для: valenok   (06.06.2006 в 07:45)
 

valenok может прокомментируешь?
targa большое спасибо

   
 
 автор: EnD   (07.06.2006 в 00:53)   письмо автору
 
   для: EnD   (06.06.2006 в 10:01)
 

Я тут подумал, и придумал, а что если просто в обработчике формы этой, добавить проверку checkbox'a, и если он не принимает заданное значение, то выводить ошибку, мне кажется так тоже можно, да и легче это будет... или я ошибаюсь?

   
 
 автор: targa   (07.06.2006 в 01:26)   письмо автору
 
   для: EnD   (07.06.2006 в 00:53)
 

>Я тут подумал, и придумал, а что если просто в обработчике
>формы этой, добавить проверку checkbox'a, и если он не
>принимает заданное значение, то выводить ошибку, мне кажется
>так тоже можно, да и легче это будет... или я ошибаюсь?

Я это вам предлагал во втором своем посте.
Тогда ошибку (сообщение о непоставленности галочки) юзер увидит только когда ваша форма уйдет на сервер, обработается и вы выведете ему страницу. Поэтому JS-овский alert более лоялен к юзеру в данном случае.

>valenok может прокомментируешь?
А что там комментировать?
Имитация ссылки, которая открывает в popup-окне текст договора.

   
 
 автор: valenok   (07.06.2006 в 07:29)   письмо автору
 
   для: targa   (07.06.2006 в 01:26)
 

Комментирую - на мой взгляд весьма удобное место для договора.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования