/admin.php?mod=static?id=1
Разрешено ли такое вообще, ссылка с двумя знаками "?".
И у меня не передается последний параметр id=1. Я делаю проверку но ни ошибки нет, ни данных о переменной и сам контент не выводится. Я так решил что проблема в двух вопросительных знаках "?"
Спустя 3 минуты, 31 секунда (18.09.2010 - 21:42) twin написал(а):
Правильно решил. Вместо второго вопроса должен быть амперсанд (&)
Спустя 14 часов, 32 минуты, 59 секунд (19.09.2010 - 12:15) allforweb написал(а):
Я делаю так:
if (!isset($id)) - если не существует переменной, вывожу через цикл весь список новостей, а если переменная id существует - вывожу форму для добавления. Но переменной PHP не видит. Но если я нажимаю ссылкe такого вида:
/admin.php?mod=static&id=1 значит эта переменная должна появиться, она же стоит в конце.
if (!isset($id)) - если не существует переменной, вывожу через цикл весь список новостей, а если переменная id существует - вывожу форму для добавления. Но переменной PHP не видит. Но если я нажимаю ссылкe такого вида:
/admin.php?mod=static&id=1 значит эта переменная должна появиться, она же стоит в конце.
Спустя 3 минуты, 50 секунд (19.09.2010 - 12:19) Админ написал(а):
надо писать
передаётся не переменная id а массив get т.е.переменную надо вытащить из массива
if (!isset ($_GET['id']))
передаётся не переменная id а массив get т.е.переменную надо вытащить из массива
Спустя 2 минуты, 18 секунд (19.09.2010 - 12:21) Админ написал(а):
а ещё лучше
if (isset($_GET['id']))
{$id = $_GET['id'];}
Спустя 11 минут, 59 секунд (19.09.2010 - 12:33) ZSH написал(а):
$id = isset($_GET['id']) ? $_GET['id'] : FALSE;
if($id)
{
}
Спустя 12 минут, 33 секунды (19.09.2010 - 12:45) inpost написал(а):
Админ
Надо проверять !empty - не пустой.
А вот пример из Ирбиса:
Надо проверять !empty - не пустой.
А вот пример из Ирбиса:
$var = !empty($_POST['var'])?$_POST['var']:NULL;
Спустя 2 минуты, 14 секунд (19.09.2010 - 12:48) ZSH написал(а):
Цитата |
Надо проверять !empty - не пустой. |
а если 0?
Спустя 5 минут, 41 секунда (19.09.2010 - 12:53) Админ написал(а):
так вроде вопрос был почему переменная не передаётся , а не о том как её проверять !
Спустя 5 минут, 33 секунды (19.09.2010 - 12:59) inpost написал(а):
ZSH
Ну если передаём значение, то:
- собственно об этом только что подумал, надо бы попробовать так =)
Теперь сам ответ: переменная приходит в виде:
И обращение к ней стоит делать именно как к (int)$_GET['id'] , нет смысла её инициализировать в обычную переменную, если с ней в дальнейшем не проводятся никакие операции отдельно.
Ну если передаём значение, то:
$var = !isset((int)$_POST['var'])?(int)$_POST['var']:NULL;Для строковых данных сразу:
$var = !empty((string)$_POST['var'])?(string)$_POST['var']:NULL;
- собственно об этом только что подумал, надо бы попробовать так =)
Теперь сам ответ: переменная приходит в виде:
$_GET['id'] = 1;
И обращение к ней стоит делать именно как к (int)$_GET['id'] , нет смысла её инициализировать в обычную переменную, если с ней в дальнейшем не проводятся никакие операции отдельно.
Спустя 15 минут, 13 секунд (19.09.2010 - 13:14) Админ написал(а):
Цитата |
И обращение к ней стоит делать именно как к (int)$_GET['id'] , нет смысла её инициализировать в обычную переменную, если с ней в дальнейшем не проводятся никакие операции отдельно. |
и таких условий тоже не ставилось - простой вопрос два простых ответа - чё тут ещё обсуждать - так мы здесь в итоге целый мануал всей толпой напишем.
Спустя 2 минуты, 43 секунды (19.09.2010 - 13:17) allforweb написал(а):
Цитата (Админ @ 19.09.2010 - 10:14) | ||
и таких условий тоже не ставилось - простой вопрос два простых ответа - чё тут ещё обсуждать - так мы здесь в итоге целый мануал всей толпой напишем. |
Все заработало у меня. Спасибо!
Спустя 14 минут, 42 секунды (19.09.2010 - 13:32) Админ написал(а):
Цитата |
И обращение к ней стоит делать именно как к (int)$_GET['id'] |
а где сказано,что id - число,мож там варианты типа id = gut - совсем у человека мозг взорвётся если он не знает зачем эта int нужна.
Спустя 6 минут, 57 секунд (19.09.2010 - 13:38) inpost написал(а):
Админ
Логика, стандарт. + все, без исключения, используют id как нумерацию! Если у человека что-то не получается, то он открывает php.su и читает мануал. Особенно важно приучить с самого начала так проверять каждую функцию
Логика, стандарт. + все, без исключения, используют id как нумерацию! Если у человека что-то не получается, то он открывает php.su и читает мануал. Особенно важно приучить с самого начала так проверять каждую функцию
Спустя 22 минуты, 19 секунд (19.09.2010 - 14:01) Админ написал(а):
даже здесь на форуме я видал такие вещи,где логикой и не пахнет.если б все вникали в мануалы - то нафига этот форум тогда нужен,про всех без исключения - вы батенька позвольте опрос что-ли проводили ? (а приучивают обычно кошек к горшку)
Спустя 27 минут, 7 секунд (19.09.2010 - 14:28) twin написал(а):
Цитата |
Логика, стандарт. + все, без исключения, используют id как нумерацию! |
А вот и не прав. Допустим в элементах формы id вообще не имеет права быть числовым. id происходит от "идентификатор", не более того. И никаких намеков на его свойства нигде нет.
Спустя 4 минуты, 16 секунд (19.09.2010 - 14:32) Админ написал(а):
inpost
Вот так тебя голубчик - по всем пунктам !!!
Вот так тебя голубчик - по всем пунктам !!!

Спустя 1 час, 44 минуты, 22 секунды (19.09.2010 - 16:17) inpost написал(а):
ну ладно, пусть id и числовой, но я ведь сказал, что в данном примере надо именно писать так, так как итак понятно, что идентификатор числовой.
Админ
Увы, лишь по одному пункту, и я согласен, что id может быть и текстовым. Но в данном примере это числовое значение. Пусть человек сам проверит, что это значит.
Админ
Увы, лишь по одному пункту, и я согласен, что id может быть и текстовым. Но в данном примере это числовое значение. Пусть человек сам проверит, что это значит.
Спустя 14 минут, 56 секунд (19.09.2010 - 16:31) Админ написал(а):
inpost
да ладно отмазываться - ты чего весь его код видел - раз он сам нигде не указал,что id однозначно числовой следовательно возможно всё что угодно - про логику из той же оперы
да ладно отмазываться - ты чего весь его код видел - раз он сам нигде не указал,что id однозначно числовой следовательно возможно всё что угодно - про логику из той же оперы