Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP

Войти
Регистрация
Восстановить пароль
 
Лилёк
0 / 0 / 1
Регистрация: 10.05.2012
Сообщений: 95
#1

Не работает переадресация на другую страничку - PHP

05.02.2017, 13:00. Просмотров 163. Ответов 2
Метки нет (Все метки)

Здравствуйте! Подскажите, пожалуйста, в чём может быть проблема. Нашла пример формы обратной связи в интернете, загрузила на хостинг. После нажатия кнопки "Отправить", письмо отправляется и происходит переход на файл-обработчик "contact-form.php", с которого через 5 секунд должен произойти переход на выбранный адрес, но этого не происходит.

HTML код:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Форма обратной связи на HTML и PHP</title>
    <meta name="robots" content="noindex, nofollow"/>
    <link rel="stylesheet" media="screen" href="styles.css" >
</head>
<body>
<form class="contact_form" action="contact-form.php" method="post">
    <p>
            <label for="name">Имя:</label>
            <input type="text"  name="name" placeholder="Введите ваше имя" required />
        </p>
        <p>
            <label for="email">Email:</label>
            <input type="email" name="email" placeholder="Введите электронный адрес" required />
            <span class="form_hint">Правильный формат "name@something.com"</span>
        </p>
        <p>
            <label for="tel">Телефон:</label>
            <input type="tel" name="tel" placeholder="Введите номер телефона" required />
            <span class="form_hint">Правильный формат "+7-123-4567890"</span>
        </p>
        <p>
            <label for="website">Сайт:</label>
            <input type="url" name="website" placeholder="Введите адрес вашего сайта" pattern="(http|https)://.+"/>
            <span class="form_hint">Правильный формат "http://someaddress.com"</span>
        </p>
        <p>
            <label for="message">Текст сообщения:</label>
            <textarea name="message" cols="40" rows="6" required ></textarea>
        </p>
        <input name="bezspama" type="text" style="display:none" value="" />
        <p>
            <button class="submit" type="submit">Отправить сообщение</button>
        </p>
</form>
</body>
</html>
CSS код:
Файл в архиве, что бы не загромождать.

PHP код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
 
/* Задаем переменные */
$name = htmlspecialchars($_POST["name"]);
$email = htmlspecialchars($_POST["email"]);
$tel = htmlspecialchars($_POST["tel"]);
$website = htmlspecialchars($_POST["website"]);
$message = htmlspecialchars($_POST["message"]);
$bezspama = htmlspecialchars($_POST["bezspama"]);
 
/* Ваш адрес и тема сообщения */
$address = "my@mail.ru";
$sub = "Сообщение с сайта ХХХ";
 
/* Формат письма */
$mes = "Сообщение с сайта ХХХ.\n
Имя отправителя: $name 
Электронный адрес отправителя: $email
Телефон отправителя: $tel
Сайт отправителя: $website
Текст сообщения:
$message";
 
 
if (empty($bezspama)) /* Оценка поля bezspama - должно быть пустым*/
{
/* Отправляем сообщение, используя mail() функцию */
$from = "Reply-To: $email \r\n";
if (mail($address, $sub, $mes, $from)) {
    header('Refresh: 5; URL=http://adress.ru');
    echo '<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head>
    <body>Письмо отправлено, через 5 секунд вы вернетесь на страницу XXX</body>';}
else {
    header('Refresh: 5; URL=http://adress.ru');
    echo '<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head>
    <body>Письмо не отправлено, через 5 секунд вы вернетесь на страницу YYY</body>';}
}
exit; /* Выход без сообщения, если поле bezspama чем-то заполнено */
?>
Почему не происходит переход? И можно ли сделать так, чтобы вообще перехода на файл contact-form.php в браузере не было? Или ещё какой нибудь вариан выйти из этой ситуации...

Файлы формы прилагаю с этому сообщению.
0
Вложения
Тип файла: rar contact-form.rar (2.9 Кб, 0 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2017, 13:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не работает переадресация на другую страничку (PHP):

Переадресация на страничку, секундомер - PHP
И так: на первой странице должен идти секундомер а потом, после переадрисации, остановится и вывести время ну то есть было 23...

Переход на другую страничку - PHP
Здравствуйте. Помогите сделать. Есть Сайт. Главная страничка 1 в ней есть список слов (взяты из базы), при нажатии на слово...

Пропадает ник при переходе на другую страничку - PHP
Здравствуйте, проблема такая: Допустим я авторизовался на сайте и у меня с право пишет: Подключён! Здравствуйте, alex. Но если я перейду на...

Нужно передать на другую страничку итоговою сумму оплаты - PHP
Есть страничка добавления груза add.php и конечный расчёт стоимости перед оплатой, допустим я ввёл в строке цифру 1, калькулятор мне...

Не работает переадресация - PHP
вот небольшой скрипт &lt;?php define('MYADMIN_ROOT', getcwd()); if (!$_SESSION){ if (isset($_REQUEST) &amp;&amp; isset($_REQUEST)){ ...

Не работает переадресация - PHP
if ( !$get_yandex and !empty($_GET) and $_GET == 'add_yandex' ): // Генерируем URL для авторизации $ym = new...

2
Para bellum
Эксперт PHP
3050 / 2812 / 610
Регистрация: 06.01.2011
Сообщений: 8,198
05.02.2017, 13:24 #2
Цитата Сообщение от Лилёк Посмотреть сообщение
но этого не происходит.
Включите вывод всех ошибок в файле contact-form.php и поймёте проблему.
0
miketomlin
Заблокирован
05.02.2017, 14:38 #3
Цитата Сообщение от Лилёк Посмотреть сообщение
И можно ли сделать так, чтобы вообще перехода на файл contact-form.php в браузере не было?
AJAX. Или делайте редирект сразу же по протоколу HTTP на страницу/страницы с результатами (стандартным заголовком Location), а там уже можете делать пользовательский редирект, если хотите. В этом случае адрес обработчика в адресной строке практически не будет появляться.

И попробуйте отправить себе письмо через форму от имени пользователя с ящиком на Mail.Ru – сомневаюсь, что вы что-то получите
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2017, 14:38
Привет! Вот еще темы с ответами:

Не работает проверка теста и перенаправление на другую страницу. - PHP
Есть тест который читается из файла. Когда подходит очередь последнего вопроса должна также происходить проверка правильности ответа и...

Переход на другую страничку - HTML, CSS
Добрый вечер! Как сделать чтобы файл index.html, который находиться в корне папки &quot; Ticket service WEB &quot; открылся по переходу? ...

После авторизаций не переходит на другую страничку - PHP БД
привет, друзья. Вот такая проблема. Написал регистрацию и авторизацию. Все проходит регистрация с заносом в базу данных. далее проходим...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.