Автор Тема: Способы остановки функции  (Прочитано 3377 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Wizard7b

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 12
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Способы остановки функции
« : 13 Декабря 2006, 17:53:00 »
Тут вот такая тема!

Создаю небольшой тест из флажков (именно из них) Построение такое

ВОПРОС => ДА - НЕТ

Далее создал форму для проверки заполнения флажков и подсчет количества положительных ответов.

if ($_POST[\'submit\']!=false)
{


if(!isset($cda)) {if(!isset($cnet)) {echo($error); exit;}}
if(!isset($yda)) {if(!isset($ynet)) {echo($error); exit;}}
if(!isset($vda)) {if(!isset($vnet)) {echo($error); exit;}}
if(!isset($ceda)) {if(!isset($cenet)) {echo($error); exit;}}
if(!isset($eda)) {if(!isset($enet)) {echo($error); exit;}}
if(!isset($hda)) {if(!isset($hnet)) {echo($error); exit;}}
if(!isset($sda)) {if(!isset($snet)) {echo($error); exit;}}
if(!isset($vada)) {if(!isset($vanet)) {echo($error); exit;}}
if(!isset($hoda)) {if(!isset($honet)) {echo($error); exit;}}
if(!isset($esda)) {if(!isset($esnet)) {echo($error); exit;}}
if(!isset($uda)) {if(!isset($unet)) {echo($error); exit;}}
if(!isset($dda)) {if(!isset($dnet)) {echo($error); exit;}}
if(!isset($zda)) {if(!isset($znet)) {echo($error); exit;}}
if(!isset($hotda)) {if(!isset($hotnet)) {echo($error); exit;}}

if( $ot <= 4 ){echo($zero); exit; }
elseif( $ot >= 13 ){echo ( $three ); exit; }
elseif( $ot >= 9 ){echo ( $two ); exit; }
elseif( $ot >= 5 ){echo ( $one ); exit; }

}

ТУТ ВОТ В ЧЕМ ПРОБЛЕМА!!!

Как видно ошибку форма выдает на новой чистой странице странице. Форму я остановил при помощи exit.

Мне необходимо чтобы сообщение об ошибке выдавало на одной странице с тестом.

Проблема сотоит в том что бы остановит форму и выдать сообщение. Если убрать везде exit сообщение об ошибке дублируется.

Оффлайн xames

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 62
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Способы остановки функции
« Ответ #1 : 23 Декабря 2006, 17:13:35 »
if( post )
{
$err= \'\';
делаешь проверки
если возникает ошибка то
$err = $error;
}

далее вывод формы
 echo "$err  somthing html ";

а дальнейшее выполнение скрипта привязывай к if(empty($err))...

Оффлайн andymc

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 400
  • +1/-0
  • 0
    • Просмотр профиля
Способы остановки функции
« Ответ #2 : 07 Января 2007, 00:29:53 »
Wizard7b
14 строк одно и то же! И не лень тебе было это всё писать???
try to use
$error=0;
!isset($cda) && !isset($cnet) ? $error=1 : false;
...
текст
if ($error){
 exit($error);
}

А если бы было 100 вопросов?... (придумай что-нить попроще)

 

Sitemap 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