LINUX.ORG.RU

php-скрипт, ошибка в if elseif else, прерывание по exit

 


0

2

Ниже приведен php-код страницы, которая обрабатывает форму обратной связи на сайте (на мыло отправляется письмо). Проблема: если капча введена неправильно, выводится сообщение «Капча введена неверно» и все, но письмо все равно отправляется. По идее, работа скрипта должна прерываться командой exit. Возможно, ошибка в использовании exit, возможно в конструкции if elseif else. Помогите, пожалуйста.

if ($_POST['kapcha'] != $_SESSION['rand_code'])
	{
	echo "Капча введена неверно";
	exit(1);
	}

		elseif ($send == 'true')
			{
			echo "<b>Спасибо за отправку вашего сообщения!<p>";
			echo "<a href=index.html>Нажмите,</a> чтобы вернуться на главную страницу";
			}
				
				else
					{
					echo "<p><b>Ошибка. Сообщение не отправлено!";
					}


Последнее исправление: carabo (всего исправлений: 1)

Ле

if ($_POST['kapcha'] != $_SESSION['rand_code'])
	{
	echo "Капча введена неверно";
        echo "pls не отправляй там выше письмо";
        $send = false;
        $send = !!$send;
        $send = 0;
	exit(1);
	}

anonymous
()
Ответ на: комментарий от anonymous

Не работает! Письмо оправляется.

carabo
() автор топика

Не забудь ещё данные, пришедшие в $_POST проверить.

Kilte ★★★★★
()
Ответ на: комментарий от Kilte

Kilte

Я в php вообще не рублю, помогите, пожалуйста, до конца.

Parse error: syntax error, unexpected '[' in /home/***/public_html/mail.php on line 14

line 14:

$errors = [];

carabo
() автор топика
Ответ на: комментарий от carabo

Я в php вообще не рублю

Судя по треду ты и погромировании не рубишь. Зачем ты этим занимаешься?

anonymous
()
Ответ на: комментарий от Kilte

А ещё покажи php -v, если не трудно.

?

Скрипт работает, спасибо.

Еще одна просьба: ответ приходит в виде кракозябров, в предыдущем варианте этого не было, как исправить.

Занимаюсь по необходимости.

carabo
() автор топика
Ответ на: комментарий от carabo

?

Версия PHP какая интересно знать.

ответ приходит в виде кракозябров

Ответ кому? Браузеру? Во всяком случае я обновил скрипт, ссылка старая.

Kilte ★★★★★
()
Последнее исправление: Kilte (всего исправлений: 1)
Ответ на: комментарий от carabo

Ну например: http://webew.ru/articles/297.webew А php рекомендую обновить. хотябы до 5.4, а лучше до 5.6. 5.3 официально уже не поддерживается, хотя мейнтейнеры используемого дистрибутива могут бэкпортировать патчи самостоятельно. Кстати, что за дистрибутив такой?

Kilte ★★★★★
()
Ответ на: комментарий от carabo

Посмотри в панели, можно ли сменить там версию php, ну или напиши в поддержку. А вообще бежать с таких хостингов надо. ИМХО.

Kilte ★★★★★
()
Последнее исправление: Kilte (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.