PHP/MySQL | switch case
В общем такая проблема.
Если делаю так $act = $_GET['act'], то в default: мне выдает ошибку, но оба case работают хорошо.
Notice: Undefined index: act in *тут путь, не более* on line 19
19 строка - $act = $_GET['act'];
А если ставлю $act = isset($_GET['act']), то ошибка пропадает, но появляется другая проблема.
У меня помимо default: есть еще 2 case. Назовем их case 'one': и case 'two': . Итак, ошибка пропала, но вот сама проблема. case 'one': работает прекрасно, но когда я хочу перейти на case 'two': , то меня перебрасывает на case 'one': , хотя в адресной строке показывается ?act=two.
Как решить эти проблемы?
P.S - break; имеется после каждого case.
$act = $_GET['act'];
switch($act){
case 'one':
echo 'Текст';
break;
case 'two':
echo 'Текст 2';
break;
default:
echo 'Текст';
break;
}
Если делаю так $act = $_GET['act'], то в default: мне выдает ошибку, но оба case работают хорошо.
Notice: Undefined index: act in *тут путь, не более* on line 19
19 строка - $act = $_GET['act'];
А если ставлю $act = isset($_GET['act']), то ошибка пропадает, но появляется другая проблема.
У меня помимо default: есть еще 2 case. Назовем их case 'one': и case 'two': . Итак, ошибка пропала, но вот сама проблема. case 'one': работает прекрасно, но когда я хочу перейти на case 'two': , то меня перебрасывает на case 'one': , хотя в адресной строке показывается ?act=two.
Как решить эти проблемы?
P.S - break; имеется после каждого case.
$act = $_GET['act'];
switch($act){
case 'one':
echo 'Текст';
break;
case 'two':
echo 'Текст 2';
break;
default:
echo 'Текст';
break;
}
TJerry, дружище, ты что же.
isset возрвщает булевое значение.
а первая ошибка Notice, т.е уведомление скорее о том что индекса в данном массиве переданных GET значений нету.
выруби Notice, оставь Warning и трэшевые ошибки.
по поводу всяких перебросов скорее ты что то не то пишешь в case, по данному коду все должно прекрасно работать и не быть никаких нотисов если GET'ом передаешь act со значением.
________
посл. ред. 04.12.2014 в 00:23; всего 2 раз(а); by 6267290
isset возрвщает булевое значение.
а первая ошибка Notice, т.е уведомление скорее о том что индекса в данном массиве переданных GET значений нету.
выруби Notice, оставь Warning и трэшевые ошибки.
по поводу всяких перебросов скорее ты что то не то пишешь в case, по данному коду все должно прекрасно работать и не быть никаких нотисов если GET'ом передаешь act со значением.
________
посл. ред. 04.12.2014 в 00:23; всего 2 раз(а); by 6267290
6267290 (04.12.2014 в 00:20)
TJerry, дружище, ты что же.
isset возрвщает булевое значение.
а первая ошибка Notice, т.е уведомление скорее о том что индекса в данном массиве переданных GET значений нету.
выруби Notice, оставь Warning и трэшевые ошибки.
по поводу всяких перебросов скорее ты что то не то пишешь в case, по данному коду все должно прекрасно работать и не быть никаких нотисов если GET'ом передаешь act со значением.
TJerry, дружище, ты что же.
isset возрвщает булевое значение.
а первая ошибка Notice, т.е уведомление скорее о том что индекса в данном массиве переданных GET значений нету.
выруби Notice, оставь Warning и трэшевые ошибки.
по поводу всяких перебросов скорее ты что то не то пишешь в case, по данному коду все должно прекрасно работать и не быть никаких нотисов если GET'ом передаешь act со значением.
на бумасе есть нормальные люди, о боги. завтра дождь пойдёт.
6267290, $act = isset($_GET['act']) ? htmlspecialchars($_GET['act']) : ''; Этот код мне помог, как не странно.
TJerry, именно. тернарный оператор спасает в таких ситуациях если речь вести так же о чистоте кода.
________
посл. ред. 04.12.2014 в 00:50; всего 1 раз(а); by 6267290
________
посл. ред. 04.12.2014 в 00:50; всего 1 раз(а); by 6267290
6267290, все равно спасибо за помощь :)
6267290 (04.12.2014 в 00:20)
TJerry, дружище, ты что же.
isset возрвщает булевое значение.
а первая ошибка Notice, т.е уведомление скорее о том что индекса в данном массиве переданных GET значений нету.
выруби Notice, оставь Warning и трэшевые ошибки.
по поводу всяких перебросов скорее ты что то не то пишешь в case, по данному коду все должно прекрасно работать и не быть никаких нотисов если GET'ом передаешь act со значением.
TJerry, дружище, ты что же.
isset возрвщает булевое значение.
а первая ошибка Notice, т.е уведомление скорее о том что индекса в данном массиве переданных GET значений нету.
выруби Notice, оставь Warning и трэшевые ошибки.
по поводу всяких перебросов скорее ты что то не то пишешь в case, по данному коду все должно прекрасно работать и не быть никаких нотисов если GET'ом передаешь act со значением.
Первый раз вижу здесь нормального кодера
HUAWEI_БУЛЬБАШЬ_НАХ, тогда может стоит ознакомиться с другими темами, вдруг найдем о чем пообщаться? http://bymas.ru/forum/viewforum.php?type=my&user_id=14264