Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Отправка формы html - на почту?, как?
Форумы портала PHP.SU » PHP » Программирование на PHP » Отправка формы html - на почту?, как?

Страниц (2): [1] 2 »
 

1. repz - 28 Ноября, 2007 - 16:11:48 - перейти к сообщению
Помогите пожалуйста!
PHP:
скопировать код в буфер обмена
  1. <form method="POST" action="send.php" name="form_name">
  2.  
  3. <table cellpadding="0" cellspacing="3" border="0" class="content_inside">
  4. <tr>
  5.         <td width="130">Имя:<br>
  6.         </td>
  7.         <td><input type="text" name="name" size="40"></td>
  8. </tr>
  9. <tr>
  10.         <td width="100">E-mail:<br>
  11.                 </td>
  12.         <td><input type="text" name="email" size="40"></td>
  13. </tr>
  14. <tr>
  15.         <td width="100">Контактные&nbsp;телефоны:</td>
  16.         <td><input type="text" name="phone" size="40"></td>
  17. </tr>
  18. <tr>
  19.         <td width="100">Дата 1:</td>
  20.         <td>
  21.         <input type="text" name="zaezd" size="10" readonly="1" value="" maxlength="32">
  22.        
  23.         </td>
  24. </tr>
  25. <tr>
  26.         <td width="100">Дата 2:</td>
  27.         <td>
  28.         <input type="text" name="otezd" size="10" readonly="1" value="" maxlength="32">
  29.        
  30.         </td>
  31. </tr>
  32. <tr>
  33.         <td width="100">Кол-во:</td>
  34.         <td><input type="text" name="man" size="10"></td>
  35. </tr>
  36. <tr>
  37.         <td width="100">Проживание:</td>
  38.         <td>
  39.         <label for="c_kot">1&nbsp;&nbsp;</label><input type="checkbox" id="c_kot" name="c_kot" value="1">
  40.         <label for="c_vip">2&nbsp;&nbsp;</label><input id="c_vip" type="checkbox" name="c_vip" value="1">
  41.         </td>
  42. </tr>
  43. <tr>
  44.         <td width="100" valign="top">Доп.&nbsp;информация:</td>
  45.         <td><textarea name="dop" cols="30" rows="10"></textarea> </td>
  46. </tr>
  47.  
  48. <tr>
  49.         <td colspan="2" valign="top" align="center">
  50.                 <br><input type="submit" value="Отправить"></td>
  51. </tr>
  52. </table>
  53. </form>
  54.  
2. Staind - 28 Ноября, 2007 - 17:13:37 - перейти к сообщению
Фига Не понял
2repz, давай начнем хотя бы (чтобы не путаться) с "Ваш E-Mail", "Содержание" и кнопки "Отправить"?
3. repz - 28 Ноября, 2007 - 17:44:50 - перейти к сообщению
2 Staind:
Давайте)!
С кнопкой вроде все ясно, она вызовет send.php
далее в нем соответственно написать, что-то вроде:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $name = $_POST['name'];
  3.         $mail = $_POST['email'];
  4.         $phone = $_POST['phone'];
  5.         mail("qqq@yan.ru","lala","Имя : $name\nE-mail : $mail\nТелефон: $phone");
  6. ?>

но что то говорит мне , что это не так)

(Добавление)
Ну или вот так, например:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $sendTo = "222@222.ru";
  3. $subject = "Тема тута";
  4. $headers = "от кого: " . "<" . $_POST["email"] .">\r\n";
  5. $headers .= "имя:" . "<" . $_POST["name"] . ">\r\n";
  6. $headers .= "тел:" . "<" . $_POST["phone"] . ">\r\n";
  7. $headers .= "заезд:" . "<" . $_POST["zaezd"] . ">\r\n";
  8. $headers .= "отъезд:" . "<" . $_POST["otezd"] . ">\r\n";
  9. $headers .= "челы:" . "<" . $_POST["man"] . ">\r\n";
  10. $headers .= "еще инфа:" . "<" . $_POST["dop"] . ">\r\n";
  11. $subject=convert_cyr_string($subject,"w","k");
  12. $headers=convert_cyr_string($headers,"w","k");
  13. mail($sendTo, $subject, $headers);
  14. ?>

Возник вопрос, а как отправлять состояние чекбоксов?
и еще можно ли привести это в читаемый вид, например в табличку там или форму какую?
4. EuGen - 28 Ноября, 2007 - 20:01:40 - перейти к сообщению
Вы скажите в чем состояла начальная задача, там и посмотрим
5. repz - 28 Ноября, 2007 - 22:10:42 - перейти к сообщению
Есть форма на хтмл в ней два чекбокса, как передавать на мыло их состояние в момент отправки и правильно ли я пытаюсь вообще передать данные на мыло?
6. Staind - 28 Ноября, 2007 - 23:10:55 - перейти к сообщению
Если с чекбоксами, то так:

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. if (isset ($_POST['emailsend']))
  4. {
  5.         if ($_POST['checkcheck']==1) $_POST['checkcheck']="Включен";
  6.         else $_POST['checkcheck']="Отключен";
  7. mail ("ТВОЙ_ЕМЕЙЛ",$_POST['texttitle'],$_POST['text']."\r\n Чекбокс был ".$_POST['checkcheck'],"FROM: ".$_POST['email']."\nContent-type: text/plain; charset=windows-1251");
  8. }
  9. ?>
  10. <html>
  11. <head>
  12. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
  13. <title>Untitled Document</title>
  14. </head>
  15.  
  16. <body>
  17. <form method=post>
  18. Ваш E-Mail:&nbsp;<input type=text name=email maxlength=20><br>
  19. Тема сообщения:&nbsp;<input type=text name=texttitle maxlength=20><br>
  20. Сообщение:&nbsp;<textarea rows=10 cols=55 name=text maxlength=20></textarea><br>
  21. Поставим чекбокс? &nbsp;<input type="hidden" name="checkcheck" value="0"><input type="checkbox" name="checkcheck" value="1"><br>
  22. <input type=submit name=emailsend value=Отправить>
  23. </form>
  24. </body>
  25. </html>
  26.  

Поясню. Перед самим чекбоксом делаем скрытое поле (с тем же именем) и ставим ему значение ноль. Нужно это для того, чтобы если вдруг пользователь на чекбокс не нажал, то хотябы какое-нибудь значение передалось. Не исключаю, что можно еще как-нибудь, но этот способ я узнал из книги. Вот, а в самом скрипте проверяем ровняется ли это 1, если да - то ее перезаписываем (чтобы было понятнее наглядно) как "Включен", а если 0 - то "Отключен".
P.s. Сейчас valenok напишет, что я непонятно объяснил Улыбка
P.s.s. ТВОЙ_ЕМЕЙЛ замени на нужный емейл.
P.s.s.s. С двумя чекпоинтами точно также по аналогии.
7. valenok - 29 Ноября, 2007 - 01:45:03 - перейти к сообщению
Если бы я не заметил свой ник, я бы даже не удосужился тут что либо читать ..
8. repz - 29 Ноября, 2007 - 10:46:23 - перейти к сообщению
2 Staind:
Спасибо, помогло))
2 All:
возможно ли что бы весь код был на одной странице?
9. valenok - 29 Ноября, 2007 - 12:14:58 - перейти к сообщению
Возможно.\n\n(Добавление)
Товарищ staind за вас уже и так всё сделал
10. repz - 29 Ноября, 2007 - 13:31:30 - перейти к сообщению
Спасибо, сразу, что-то не догадался))
А, как еще мона проверку поставить, что бы при обновлении не посылалось повторно? Читал смежные темы, но не разобрался, можно разъеснить))?

\n\n(Добавление)
Сделал вот так- можно мнение гуру)
PHP:
скопировать код в буфер обмена
  1. if (isset ($_POST['send']))
  2.  {
  3.  
  4. Тут скрипт
  5.  
  6. Header("Location: ".$_SERVER['PHP_SELF']);
  7.       exit;
  8. }
  9. ?>
11. evgenijj - 29 Ноября, 2007 - 13:48:19 - перейти к сообщению
Staind пишет:

Поясню. Перед самим чекбоксом делаем скрытое поле (с тем же именем) и ставим ему значение ноль. Нужно это для того, чтобы если вдруг пользователь на чекбокс не нажал, то хотябы какое-нибудь значение передалось. Не исключаю, что можно еще как-нибудь, но этот способ я узнал из книги. Вот, а в самом скрипте проверяем ровняется ли это 1, если да - то ее перезаписываем (чтобы было понятнее наглядно) как "Включен", а если 0 - то "Отключен".

Плохая книга тебе досталась.
PHP:
скопировать код в буфер обмена
  1.  
  2. if ( isset( $_POST['mycheck'] ) )
  3.   echo 'Включен';
  4. else
  5.   echo 'Выключен';
  6.  
12. Staind - 29 Ноября, 2007 - 16:24:49 - перейти к сообщению
2repz, я также делаю, только без exit, обычное перенаправление и все.
13. valenok - 29 Ноября, 2007 - 16:39:05 - перейти к сообщению
ТОгда с сегодняшнего дня делайте с exit
header не прекращает выполнение скрипта
14. Staind - 29 Ноября, 2007 - 16:57:02 - перейти к сообщению
Окей
15. repz - 29 Ноября, 2007 - 18:41:08 - перейти к сообщению
По красивишному оформлению не подскажете?

 

Powered by ExBB FM 1.0 RC1