Консультация № 63499
21.11.2006, 03:51
0.00 руб.
0 3 3
Здравствуйте!

У меня вылезло сообщение
Notice: Undefined index: topic in z:\home\localhost\www\index.php on line 1

На строке 1 следующий код
<? $p1 = $_GET[‘topic‘];

При открытии страницы никаких параметров не передавалось, если передавать, то сообщения нет.

Только не надо советовать отключить сообщение об ошибках, я уже про это читал.
Подскажите как нужно написать правильно?

Обсуждение

Неизвестный
21.11.2006, 06:32
общий
это ответ
Здравствуйте, Артём Талипов!
Можно проверить существует ли $_GET[‘topic‘] с помощью isset():


Приложение:
<? $p1=isset($_GET[‘topic‘])?$_GET[‘topic‘]:‘DefaultTopic‘;
Неизвестный
21.11.2006, 08:52
общий
это ответ
Здравствуйте, Артём Талипов!

<?
$p1=@$_GET[‘topic‘];
...
Неизвестный
21.11.2006, 16:52
общий
это ответ
Здравствуйте, Артём Талипов!
Можно использовать функцию isset() (возвращает значение переменной если она определена), однако я советую использовать "мини оператор" - @.
Можно так:
<?
if(@$_GET[‘topic‘]) {something};
?>
или
так
<?
$p1 = @$_GET[‘topic‘];
?>
Если переменная @$_GET[‘topic‘] не поределена то $p1 пимет значение 0 - очень удобно...
Форма ответа