Всем привет, Может ли кто нибудь показать пример как работать с page id? Допустим есть URL /index.php, нужно сделать URL /index?id={X}, где X может быть 0, 1, 2, и т.д. Как пример если index?id=0 то вывести echo "0" ; если index?id=1 то вывести echo "1" Спасибо за помощь! Удачного дня
то что вы описали это называется get параметры.... на сервере они доступны через массив $_GET а вообще почитайте про GET POST и как это все работает)
Спасибо, Я разобрался как сделать page id как пример - /?0 ... /?100 Подскажите в каком направлении копать, чтобы сделать /page/item?id=0 ... /page/item?id=100 То есть нужно поменять ?0 на item?id=0 Код простой if (isset($_GET['0'])) { } Спасибо!
@ЖекаW, для работы с такими параметрами, как идентификаторы, можно вовсе не использовать строку GET-параметров: /page/100
Не могу понять, почему этот код работает if (isset($_GET['id0'])) { А вот этот не хочет работать if (isset($_GET['id=0'])) {
Потому что надо хотя бы знать основы перед тем, как что-либо делать. ты же не лезешь космические аппараты собирать, не изучив документацию.
Чтобы проверить существование параметра: Код (Text): if (isset($_GET['id'])) { При этом значение может быть любым, в том числе и пустым. Городить ветвление на каждую страницу не нужно. Достаточно проверить значение параметра на нахождение в предопределенном списке «страниц»: Код (Text): $pages = [ 0 => '', 1 => '', ... ]; if (isset($pages[$_GET['id']])) { Массив $pages можно вынести на один уровень выше и объединить оба ветвления/условия. Номера страниц определены именно как индексы массива для повышения скорости. В качестве значений вместо пустых строк можно использовать имена контроллеров/функций, имена страниц, другие массивы и т.д. --- Добавлено --- Также вместо второй проверки можно искать запись с соотв. идентификатором в БД.
Господа, я всем благодарен за помощь! Вопрос конечно глупый, поэтому он в разделе для новичков. Раздела для полных нулей я не нашел. Но у меня в упор не получаеться это сделать, даже после нескольких часов и попыток. Может ли кто нибудь помочь сделать рабочий код ? index.php?id=1 => echo "1"; index.php?id=2 => echo "2";
@ЖекаW, для того, что бы возникло желание тебе помогать, с твоей стороны должно быть желание, что-то изучать. Необходимо обладать базовыми знаниями, для того, чтобы понимать ответы форумчан. Если тебе лень взять любую книгу по пхп и прочесть 3-4 главы, почему ты считаешь, что кому-то на форуме не лень сюда перепечатывать информацию из этих глав? P.S. Тем более, что ответ тебе дали в 4-том посте этого топика.
Как сделать единую точку входа с ЧПУ? Только учти, что там выделяются «идентификаторы» из пути в массив $pa, а код выделения значения GET-параметра не показан, хотя он элементарен: PHP: $pn = isset($_GET['p']) ? intval($_GET['p']) : 0; P.S. Код под комментом «// 1» можно упростить до: PHP: list($p) = explode('?', $p, 2); P.P.S. И это только начало, потому что я уверен, что твой пример с echo "1" и echo "2" не самый удачный, и тебе нужно не выводить значения id, а по значению id выводить портянки текста (или даже выполнять наборы команд). Ты упорно требуешь от нас соорудить switch, хотя я тебе в пред. посте показал, что нужно отделить данные от кода и по возможности использовать один обработчик, например размести портянки текста в массиве $pages и после показанных проверок делай вывод $pages[$_GET['id']] (или $pages[$pa[1]] для примера из этого поста).