|
| |
|
|
| |
для: Vados
(29.07.2006 в 12:46)
| | | В форме делаешь скрытое поле, например action
<input type="hidden" name="action" value="1">
|
и в скрипте проверяешь условием
<?
if($_POST['action'] == "1")
{
// код
}
?>
|
При таком способе можно использовать неограниченное количество форм на странице, только необходимо менять значение с $n на ++$n | |
| |
|
|
| |
|
|
| |
для: TheCreator
(28.07.2006 в 19:35)
| | | Всем привет!
Кто-то может подсказать правильное решение?
Заранее спасибо! | |
| |
|
|
| |
|
|
| |
для: Vados
(28.07.2006 в 19:19)
| | | Здравствуй,
>Как сделать так, чтобы при нажатии на кнопку отправить проверялись эти данные?
Можно вот так:
if (isset($_POST['send']))
{
if(empty($_POST['name_m']))
{
exit("Введите пожалуйста имя!");
}
$_POST['name_m'] = htmlspecialchars(stripslashes($_POST['name_m']));
if (empty($_POST['mail_subject']))
{
exit("Введите пожалуйста тему сообщения!");
}
$_POST['mail_subject'] = htmlspecialchars(stripslashes($_POST['mail_subject']));
if (empty($_POST['mail_msg']))
{
exit("Введите пожалуйста текст сообщения!");
}
}
|
Этот код означает, что если кнопка send получила какоето значение (То есть вы кликнули по ней) то идёт проверка заполниности формы
send - это переменная кнопки послать
(<input type="submit" value="Отправить" class="pages" name="send">)
Внимание:!!! Не забудьте добавить name="send" в <input type="submit" value="Отправить" class="pages">
Насчёт письма ответитьи не могу к сожалению. | |
| |
|
|
| |
|
|
| |
для: TheCreator
(28.07.2006 в 18:44)
| | | Спасибо огромное, помогло, а вот такой ещё вопрос, как дать возможность проверять данные при вводе:
<table cellspacing="10" cellpadding="10" border="0">
<form action="" enctype='multipart/form-data' method=post class="pages">
<tr><td width=50% class="pages">Имя:</td><td align=right><input type=text name=name_m maxlength=32 class="form"></td></tr>
<tr><td width=50% class="pages">Тема письма:</td><td align=right><input type=text name=mail_subject maxlength=64 class="form"></td></tr>
<tr><td colspan=2 class="pages">Сообщение:<br><textarea cols=50 rows=8 name=mail_msg class="form"></textarea maxlength=500></td> <br/>
</tr><tr><td colspan=2><input type=submit value='Отправить' class="pages"> <INPUT name="reset" type="reset" value='Очистить' class="pages"></td></tr>
</form>
</table>
<?php
//определить получателя почты
if(empty($_POST['name_m']))
{
exit("Введите пожалуйста имя!");
}
$_POST['name_m'] = htmlspecialchars(stripslashes($_POST['name_m']));
if (empty($_POST['mail_subject']))
{
exit("Введите пожалуйста тему сообщения!");
}
$_POST['mail_subject'] = htmlspecialchars(stripslashes($_POST['mail_subject']));
if (empty($_POST['mail_msg']))
{
exit("Введите пожалуйста текст сообщения!");
}
$_POST['mail_msg'] = htmlspecialchars(stripslashes($_POST['mail_msg']));
mail("email@email.com", "$name_m", "$mail_subject", "$mail_msg");
echo ("Ваше письмо отправлено.<br><br>Спасибо за Ваши отзывы!");
?>
|
Просто, если всё это отображается на одной странице, тогда у меня сразу срабатывает в сценарии первое условие проверки введённого имени!
Как сделать так, чтобы при нажатии на кнопку отправить проверялись эти данные?
То есть проверялись на заполнение поля : Имя, тема сообщения и само сообщение.
И ещё при таком расположении:
mail("email@email.com", "$name_m", "$mail_subject", "$mail_msg");
|
Я получаю письмо, но меня не устраивает то, что тема письма у меня идёт после самого письма, хотя в сценарии сначала идёт имя, которое указывается в subject, потом заголовок письма, а потом само тело письма, но в письме не так.
Помогите!
Заранее спасибо! | |
| |
|
|
| |
|
|
| |
для: Vados
(28.07.2006 в 18:38)
| | | Здравствуй,
Если я правельно понял то сделай так:
<form action="" enctype='multipart/form-data' method=post class="pages">
То есть поле Action ничего не писать(Оставь пустым) - так будет работать тот сценарий который находиться в коде данной страницы. | |
| |
|
|
| |
|
|
| | Всем привет!
Скажите, как можно сделать так, чтобы
<form action=sendmail.php enctype='multipart/form-data' method=post class="pages">
<tr><td width=50% class="pages">Имя:</td><td align=right><input type=text name=name_m maxlength=32 class="form"></td></tr>
<tr><td width=50% class="pages">Тема письма:</td><td align=right><input type=text name=mail_subject maxlength=64 class="form"></td></tr>
<tr><td colspan=2 class="pages">Сообщение:<br><textarea cols=50 rows=8 name=mail_msg class="form"></textarea maxlength=500></td> <br/>
</tr><tr><td colspan=2><input type=submit value='Отправить' class="pages"> <INPUT name="reset" type="reset" value='Очистить' class="pages"></td></tr>
</form>
|
при отсылке данной формы сценарий sendmail.php можно было прописать на текущей странице, а не писать новую страницу sendmail.php со сценарием.
Я просто не помню как это сделать, а очень нужно реализовать это для формы обратной связи.
То есть, что мне нужно прописать в форме, вместо form action=sendmail.php?
Не хочется, чтобы сценарий возвращал результат на др. странице, а мне нужно на текущей, где моя форма!
Заранее спасибо за вашу помощь!:-) | |
| |
|
|
|