Loading...
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;

}
TJerry, дружище, ты что же.

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 со значением.

на бумасе есть нормальные люди, о боги. завтра дождь пойдёт.
6267290, $act = isset($_GET['act']) ? htmlspecialchars($_GET['act']) : ''; Этот код мне помог, как не странно.
TJerry, именно. тернарный оператор спасает в таких ситуациях если речь вести так же о чистоте кода.
________
посл. ред. 04.12.2014 в 00:50; всего 1 раз(а); by 6267290
6267290, все равно спасибо за помощь :)
6267290 (04.12.2014 в 00:20)
TJerry, дружище, ты что же.

isset возрвщает булевое значение.

а первая ошибка Notice, т.е уведомление скорее о том что индекса в данном массиве переданных GET значений нету.

выруби Notice, оставь Warning и трэшевые ошибки.

по поводу всяких перебросов скорее ты что то не то пишешь в case, по данному коду все должно прекрасно работать и не быть никаких нотисов если GET'ом передаешь act со значением.

Первый раз вижу здесь нормального кодера
HUAWEI_БУЛЬБАШЬ_НАХ, тогда может стоит ознакомиться с другими темами, вдруг найдем о чем пообщаться? http://bym.guru/forum/viewforum.php?type=my&user_id=14264
Онлайн: 4
Время:
Gen. 0.1196
(c) Bym.Guru 2010-2025