![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| emeraudx |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 26.5.2010 Репутация: нет Всего: 0 |
Помогите кто может. Проблема в следующем.
Когда посетитель отправляет письмо с сайта, он заполняет форму, если он, допустим, заполнил не все поля, то обработчик (дан ниже) выводит ошибку "ОШИБКА". Но поскольку функция exit() завершает скрипт, то остальные тэги HTML, которые идут следом за скриптом, не обрабатываются. А это не есть хорошо . Можно ли сделать так, чтобы работу завершил только скрипт, не трогая оставшиеся тэги страницы?
Если можете объясните поподробее и попроще, т.к. я тока начинаю осваивать php. Это сообщение отредактировал(а) emeraudx - 11.6.2010, 02:26 |
|||
|
||||
| patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
ну во-первых нужно на танке покататься
и если вы знаете причину (функция exit()) и вам нужно чтобы скрипт выполнился до конца, то в чем дело? Не используем функцию exit(). Вместо нее делаем к примеру переменную $error и заносим в нее сообщение об ошибке. А далее в нужном месте выводим это сообщение -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
а можно ещё заняться таким банальным способом постижения знаний, как чтение книг. не кратких статей, а полноценных учебников. очень помогает разобраться в большинстве простых вопросов
|
|||
|
||||
| emeraudx |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 26.5.2010 Репутация: нет Всего: 0 |
Мне не нужно, чтобы скрипт выполнялся дальше, если есть ошибка. Если делать переменную error, то для вывода ошибки нужно пользоваться echo Давайте еще раз обратимся к моему коду. Если он проскакивает остановку скрипта еще со строки "ОШИБКА" (т.е. при использовании функции echo), то он идет дальше и натыкается на другой скрипт, который выводит ошибку "ОШИБКА ПРИ ОТПРАВЛЕНИИ", поскольку сообщение не отправлено администратору. Короч логика. Сначала интерпретатор выводит ошибку №1 - ОШИБКА, работает дальше и натыкается на ошибку №2 - ОШИБКА ПРИ ОТПРАВЛЕНИИ. Что у нас в итоге получается. В итоге он выводит на экран две ошибки - ошибку №1 (поскольку все строки не были заполнены, но скрипт продолжил работу) и ошибку №2 (поскольку из-за незаполненных строк письмо не отправилось), тока что это проверил. Так что здесь уместна только функция exit или die... |
|||
|
||||
| patap |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
здесь уместно правильно воспользоваться if ... else и одна переменная, которая будет содержать нужное сообщение ("ОШИБКА", "Успешно" или "Ошибка при отправлении") и ни каких exit() не нужно.
вывод сообщения будет в одном месте вот подумай как это все организоавть. Это сообщение отредактировал(а) patap - 12.6.2010, 15:40 -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |