За последние 24 часа нас посетили 15916 программистов и 1543 робота. Сейчас ищут 1030 программистов ...

Помогите с кодом формы обратной свяязи

Тема в разделе "PHP для новичков", создана пользователем viktorija, 25 ноя 2014.

  1. viktorija

    viktorija Новичок

    С нами с:
    15 сен 2014
    Сообщения:
    15
    Симпатии:
    0
    Адрес:
    Одесса
    В общем суть такова - форма работает отлично, только не могу настроить действие после отправки,- мне надо что-то типа трехсекундная страница с уведомлением, а потом редирект на главную страницу.

    код php:
    Код (Text):
    1. <?
    2. $kuda='po4ta@yandex.ru';//куда отправлять почту?
    3. $zagolovok='сообщение с сайта';
    4. $headers='Content-type: text; charset="utf-8"';
    5.  
    6. if (isset($_POST['ok'])){
    7.     //если существует переменная, значит начнем получать информацию из формы
    8.     $fio=$_POST['fio'];
    9.     $email=$_POST['email'];
    10.     $tel=$_POST['tel'];
    11.     $text=$_POST['text'];
    12.  
    13.     $messages=$text."\n".$email."\n".$tel."\n".$fio;
    14.  
    15.     if (mail($kuda,$zagolovok,$messages,$headers)){echo "Ваше сообщение доставлено.";}
    16.    
    17.     }
    18.  
    19.  
    20. ?>
    загвоздка как я поняла в этой части кода:
    Код (Text):
    1. if (mail($kuda,$zagolovok,$messages,$headers)){echo "Ваше сообщение доставлено.";}
    Подскажите плиз что мне надо добавить, изменить.
     
  2. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.250
    Адрес:
    там-сям
    Код (Text):
    1. <html>
    2. <head>
    3. <meta http-equiv="refresh" content="3; url=http://example.com/">
    4. </head>
    5. <body>
    6. ALL DONE!
    7. </body>
    8. </html>
     
  3. viktorija

    viktorija Новичок

    С нами с:
    15 сен 2014
    Сообщения:
    15
    Симпатии:
    0
    Адрес:
    Одесса
    как в html сделать редирект я знаю, но любой html код в {echo "Ваше сообщение доставлено.";} вызвает ошибку (вставляю вместо Ваше сообщение доставлено)
     
  4. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.250
    Адрес:
    там-сям
    1. какую ошибку, мы что должны угадать?
    ну попытаюсь: ты поместил(а) текст html в строку с двойными кавычками. в самом тексте тоже есть двойные кавычки и ты их никак не экранируешь. твоя строка кагбе закончилась в неположенном месте. лекарство: echo "текст \"еще\" текст";

    2. выводить много текста в echo неприлично. просто закрой php-тег и пиши html.

    Код (PHP):
    1. if (хуйнане) {
    2. ?>
    3. многомногобукв
    4. многомногобукв
    5. многомногобукв
    6. <?php
    7. } 
     
  5. deblogger

    deblogger Новичок

    С нами с:
    11 июл 2013
    Сообщения:
    200
    Симпатии:
    0
    Трансцендентально!

    Во избежание таких соблазнов не давайте name кнопкам без явной на то необходимости. Явная необходимость это, например две кнопки "М" и "Ж" в форме заказа трусов. Пришла "М" - значит мужские заказаны. А если пришла ОК - это ничего не значит. Всего остального может не быть как два пальца обоссфальт.

    Добавлено спустя 5 минут 9 секунд:
    Вместо

    header('Location:'.$url);

    и в том самом url который загрузит браузер сделать как тут написано

    viewtopic.php?f=13&t=50887&p=404917#p404790

    и все
     
  6. viktorija

    viktorija Новичок

    С нами с:
    15 сен 2014
    Сообщения:
    15
    Симпатии:
    0
    Адрес:
    Одесса
    Спасибо деблогер и всем кто пытался помочь и объяснить - все получилось: загрузился урл файла с php кодом формы, ниже которого разместила html нужной мне страницы )