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 :: Версия для печати :: Помогите доработать форму ПХП
Форумы портала PHP.SU » PHP » Программирование на PHP » Помогите доработать форму ПХП

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

1. Osanka - 20 Октября, 2010 - 11:42:20 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. header("Content-Type: text/html; charset=utf-8");
  3. $name=$_POST["name"];
  4. $email=$_POST["email"];
  5. $mess=$_POST["mess"];
  6. if (isset ($name))
  7. {
  8. $name = substr($name,0,10);
  9. if (empty($name))
  10. {
  11. echo "<center><b>имя <p>";
  12. }
  13. }
  14. else
  15. {
  16. $name = "не указано";
  17. }
  18. if (isset ($email))
  19. {
  20. $email = substr($email,0,25);
  21. if (empty($email))
  22. {
  23. echo "<center><b>E-mail <p>";
  24. }
  25. }
  26.  
  27. else
  28. {
  29. $email = "не указано";
  30. }
  31. if (isset ($mess))
  32. {
  33. $mess = substr($mess,0,6000);
  34. if (empty($mess))
  35. {
  36. echo "<center>текст сообщения<p>";
  37.  
  38. }
  39. }
  40. else
  41. {
  42. $mess = "не указано";
  43. }
  44. $i = "не указано";
  45. if ($name == $i AND $email == $i AND $mess == $i)
  46. {
  47. echo "Ошибка";
  48. }
  49. $to = "****t";
  50. $subject = "Сообщение ";
  51. $message = "$remote_url <b>Имя:</b>$name <p> <b>Е-маил:</b>$email <p><b>Сообщение:</b>$mess <p> <b>IP-адрес:</b>$REMOTE_ADDR";
  52. mail ($to,$subject,$message) or print "Не возможно отправить";
  53.  
  54. echo ' <script type="text/javascript"> location.replace("**.html"); </script>';
  55.  
  56.  
  57. ?>


Помогите добавить в форму адрес страницы с которой отправляется сообщение
(на сайте много страниц с формой отправки, необходимо чтобы на мыло приходила информация о странице отправки -толи урл страницы с которой отправлено, толь тийтл)
Очень надеюсь на помощь
2. demot - 20 Октября, 2010 - 11:57:28 - перейти к сообщению
В email сообщение нужно добавить $_SERVER['HTTP_REFERER']
Т.е. ваш код можно привести к такому виду:
CODE (htmlphp):
скопировать код в буфер обмена
  1. $message = "$remote_url <b>Имя:</b>$name <p> <b>Е-маил:</b>$email <p><b>Сообщение:</b>$mess <p> <b>IP-адрес:</b>$REMOTE_ADDR <p><b>Источник:</b> $_SERVER['HTTP_REFERER']";
  2. mail ($to,$subject,$message) or print "Не возможно отправить";
3. eai - 20 Октября, 2010 - 12:02:36 - перейти к сообщению
Не в тему, но умолчать не смог.
Так код писать нельзя. Все в одну колонку, можно и в строчу таким макаром писать!
Модераторы накажите меня если я не прав!
4. Osanka - 20 Октября, 2010 - 16:32:46 - перейти к сообщению
не работает, все ввел как сказанно, не отправляет..
5. OrmaJever - 20 Октября, 2010 - 16:45:38 - перейти к сообщению
Код нужно писать в теге [*PHP][*/PHP] без * !
Ты не пробовал читать http://php.su/lessons/?lesson_13 ?
6. Osanka - 20 Октября, 2010 - 16:56:51 - перейти к сообщению
Исправил, извиняюсь

с этим нюансом разобрался для решения проблемы делал так
PHP:
скопировать код в буфер обмена
  1.    1.
  2.       <?PHP
  3.    2.
  4.       header("Content-Type: text/html; charset=utf-8");
  5.    3.
  6.       $name=$_POST["name"];
  7.    4.
  8.       $email=$_POST["email"];
  9. [b]$url=$_SERVER['HTTP_REFERER'];[/b]
  10.    5.
  11.       $mess=$_POST["mess"];
  12.    6.
  13.       if (isset ($name))
  14.    7.
  15.       {
  16.    8.
  17.       $name = substr($name,0,10);
  18.    9.
  19.       if (empty($name))
  20.   10.
  21.       {
  22.   11.
  23.       echo "<center><b>имя <p>";
  24.   12.
  25.       exit;
  26.   13.
  27.       }
  28.   14.
  29.       }
  30.   15.
  31.       else
  32.   16.
  33.       {
  34.   17.
  35.       $name = "не указано";
  36.   18.
  37.       }
  38.   19.
  39.       if (isset ($email))
  40.   20.
  41.       {
  42.   21.
  43.       $email = substr($email,0,25);
  44.   22.
  45.       if (empty($email))
  46.   23.
  47.       {
  48.   24.
  49.       echo "<center><b>E-mail <p>";
  50.   25.
  51.       exit;
  52.   26.
  53.       }
  54.   27.
  55.       }
  56.   28.
  57.        
  58.   29.
  59.       else
  60.   30.
  61.       {
  62.   31.
  63.       $email = "не указано";
  64.   32.
  65.       }
  66.   33.
  67.       if (isset ($mess))
  68.   34.
  69.       {
  70.   35.
  71.       $mess = substr($mess,0,6000);
  72.   36.
  73.       if (empty($mess))
  74.   37.
  75.       {
  76.   38.
  77.       echo "<center>текст сообщения<p>";
  78.   39.
  79.        
  80.   40.
  81.       exit;
  82.   41.
  83.       }
  84.   42.
  85.       }
  86.   43.
  87.       else
  88.   44.
  89.       {
  90.   45.
  91.       $mess = "не указано";
  92.   46.
  93.       }
  94.   47.
  95.       $i = "не указано";
  96.   48.
  97.       if ($name == $i AND $email == $i AND $mess == $i)
  98.   49.
  99.       {
  100.   50.
  101.       echo "Ошибка";
  102.   51.
  103.       exit;
  104.   52.
  105.       }
  106.   53.
  107.       $to = "****t";
  108.   54.
  109.       $subject = "Сообщение ";
  110.   55.
  111.       $message = "$remote_url <b>Имя:</b>$name <p> <b>Е-маил:</b>$email <p><b>Сообщение:</b>$mess <p> <b>IP-адрес:</b>$REMOTE_ADDR" [b]$url[/b];
  112.   56.
  113.       mail ($to,$subject,$message) or print "Не возможно отправить";
  114.   57.
  115.        
  116.   58.
  117.       echo ' <script type="text/javascript"> location.replace("**.html"); </script>';
  118.   59.
  119.        
  120.   60.
  121.        
  122.   61.
  123.       exit;
  124.   62.
  125.       ?>
7. garvey - 20 Октября, 2010 - 17:00:36 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $message =  '<b>Имя:</b>' . $name . '<p> <b>Е-маил:</b>' . $email . '<p><b>Сообщение:</b>' . $mess . '<p> <b>IP-адрес:</b>' . $REMOTE_ADDR . '<b>Источник:</b>' . $_SERVER['HTTP_REFERER'];

Только что за переменная такая, $REMOTE_ADDR?
8. Osanka - 20 Октября, 2010 - 17:14:32 - перейти к сообщению
garvey Спасибо понял ошибки!!!

Скажите пожалуйста, еще один вопрос, как что бы вместо сообщений (на новой странице) о незаполненном поле выскакивало окно Алерт
9. OrmaJever - 20 Октября, 2010 - 20:53:12 - перейти к сообщению
javascript, а ещё лутше jquery.
Код будет выглядеть както так
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. function go(){
  3.      if($('#text').length == 0){
  4.           alert('Заполни поле!');
  5.      } else {
  6.           ( ... То что будет делатся дальше ... );
  7.      }
  8. }

Текстовому полю нужно зделать id="text" и на кнопку повесить onclick="go()"
10. JustUserR - 21 Октября, 2010 - 07:48:53 - перейти к сообщению
OrmaJever пишет:
Javascript, а ещё лутше jquery.
Использование специализированных framework-ов для реализации простых задач правильности введения пользовательской формы не является оправданным - поскольку для этой цели достаточно обращения к элементу посредством DOM-модели и дальнейшего использования строковых функций или регулярных выражений для проверки
11. eai - 21 Октября, 2010 - 10:43:04 - перейти к сообщению
JustUserR пишет:
Использование специализированных framework-ов для реализации простых задач правильности введения пользовательской формы не является оправданным

Подписываюсь под данным утверждением

 

Powered by ExBB FM 1.0 RC1