Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: проверка GET параметра
Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2007
Помог: 0 раз(а)
Я пишу:
$alp = $_GET['alp'];
if ($alp=""){...}
И это не работает
Как можно проверить, что параметр не был задан в строке? То есть была ссылка
index.php а не index.php?alp=..
Спасибо
Jakeryf
Отправлено: 14 Февраля, 2007 - 14:01:27
Новичок
Покинул форум
Сообщений всего: 31
Дата рег-ции: Янв. 2007 Откуда: System Virta
Помог: 0 раз(а)
if(!$alp) //если не задан параметр
{
}else{
}
ЗЫ в вашем примере надо писать:
if($alp == '')
{
}
----- What's common between Halloween and Christmas? Every programmer knows: 31 oct = 25 dec.
Nastena
Отправлено: 14 Февраля, 2007 - 14:05:48
Новичок
Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2007
Помог: 0 раз(а)
ой блин ну надо же так опозориться с = а не с == Спасибки за понимание ))
Viper
Отправлено: 16 Февраля, 2007 - 13:55:05
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006 Откуда: Москва
Помог: 10 раз(а)
Цитата:
я так понял что нужно помимо проверки на наличие ещё сделать проверку на правильность ?
Конечно. Когда ты задал вопрос, то не упомянул о том, что речь идет о работе с БД. Тем не менее valenok сразу об этом догадался. Догадался он, догадаются и другие. И не факт, что эти другие напишут на твой e-mail о дыре в безопасности. Будешь потом сайт из дампа восстанавливать. Что-то в этом духе:
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
Цитата:
// Проверяем, что переменные $_GET['sort'] и $_GET['in'] установлены и не равны пустой строке ""
if ( !empty($_GET['sort']) and !empty($_GET['in']) )
{
if ($_GET['in'] == 'ASC')
$in = $_GET['in'];
else
$in = 'DESC';
// Проверяем, а есть ли такое поле в таблице БД...
неасилил. сделал по аналогии как написал valenok
получилось:
$sort = "id";
$in = "ASC";
$cols = array('p_number', 'p_year', 'ASC'); // По двум колонкам
if (@in_array($_GET['sort'], $cols)) $sort = $_GET['sort'];
if (@$_GET['in'] == 'ASC') {
$in = 'ASC';
} else { $in= 'DESC'; }
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.