Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: по поводу switch();
 
 автор: Грабитель   (20.01.2007 в 02:12)   письмо автору
 
 

Допустим get передается переменная $mode (index.php?mode=1) она может принимать значения 'text1', '1text1, 'te784xt'
Я делаю вот так:

<?php
$mode 
$_GET['mode'];
switch (
$mode){
case 
'text1':
//code1
break;

case 
'1text1':
//code2
break;

case 
'te784xt':
//code3
break;
}
?>

Вопрос, как вывести сообщение о том, что переданная переменная приняла недопустимое значение?
У меня только одна мысль - вбить в массив все допустимые значения $mode и проверять постоянно. А можно как-нибудть выйти из switch? Чтонибудь типа:

<?php
$mode 
$_GET['mode'];
switch (
$mode){
case 
'text1':
//code1
break;

case 
'1text1':
//code2
break;

case 
'te784xt':
//code3
break;
} ELSE { print 
'Переданное значение недопустимо'; } // такое у меня вылетает в ошибку парсинга.. (
?>

Спасибо, заранее )

   
 
 автор: Sergey89   (20.01.2007 в 02:24)   письмо автору
 
   для: Грабитель   (20.01.2007 в 02:12)
 

switch ($var) {
    //...
    default:
        //...
}

   
 
 автор: Грабитель   (20.01.2007 в 02:29)   письмо автору
 
   для: Sergey89   (20.01.2007 в 02:24)
 

Спасибо! ;)

   
 
 автор: bronenos   (20.01.2007 в 08:37)   письмо автору
 
   для: Грабитель   (20.01.2007 в 02:29)
 

А зачем $mode = $_GET[mode] ?
Это же не POST...... она сразу доступна

   
 
 автор: targa   (20.01.2007 в 09:32)   письмо автору
 
   для: bronenos   (20.01.2007 в 08:37)
 

POST-переменная тоже сразу будет доступна.

   
 
 автор: Unkind   (20.01.2007 в 10:22)   письмо автору
 
   для: bronenos   (20.01.2007 в 08:37)
 

А зачем $mode = $_GET[mode] ?
При "register_globals off" $mode изначально существовать не будет, даже, если есть $_GET['mode']. С POST тоже самое. А при включенном register_globals, переменные будут автоматически создаваться из POST, GET, COOKIE.

   
 
 автор: ULIS   (20.01.2007 в 13:42)   письмо автору
 
   для: Unkind   (20.01.2007 в 10:22)
 

При "register_globals off ", если некоторые переменные нужно поместить в глобальной области, можно исполбзовать системную функцию import_request_variables("[get, post, cookie]", "преффикс, по которому идет обращение к переменным")

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования