|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] $_GET[''] |
|
|
[решено] $_GET['']
|
Ветеран Сообщения: 823 |
Вообщем написал я скрипт для того, что бы картинка менялась для каждого подраздела.
Но написать красиво я не смог, написал таким образом, что этот код нужно раз двадцать дублировать для разных разделов у меня там actors, books, films Система моя меню и подменю такая: Например для раздела актеров (В адресной строке) ?hp = actors //главный раздел ?actors=daniel //подраздел
Хотелось бы сделать это все более универсальным, то есть значение actors в коде заменить на переменную, которая будет то book то films и так далее. Сделаю переменную:$hp $hp = array_keys($_GET); Которую пропишу везде вместо акторс
Выводит же на экран: error actors То есть переменная помещает в себя правильну инфу, но возможно ошибка в участке кода типа: $submenupic1 = $_GET['$hp[0]']; |
|
------- Отправлено: 23:46, 05-03-2008 |
Ночной странник Сообщения: 4050
|
Профиль | Сайт | Отправить PM | Цитировать $submenupic1 = $_GET[$hp[0]]; - пробовал?
в чем разница между одинарными и двойными кавычками в PHP? |
------- Отправлено: 23:50, 05-03-2008 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 823
|
Профиль | Сайт | Отправить PM | Цитировать Чудеса!!!! )) Заработало:
В моем понимании - разницы между одинарными и двойными нету. Но исползуют разные кавычки для того, что бы они в срединке не пересекались. То есть printf ("asdasd asdasdads 'asdasdasd' ", sd); Внешние - двойные - внутри одинарные |
------- Отправлено: 23:54, 05-03-2008 | #3 |
Вредитель Сообщения: 460
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 00:02, 06-03-2008 | #4 |
Ветеран Сообщения: 823
|
Профиль | Сайт | Отправить PM | Цитировать Спасибо. А не подскажете еще чуть-чуть?
Вообщем мне нужно заполнить одномерный массив значениями $menu1:
Вроде бы все правильно, но получается фигня: Array ( [0] => Література [1] => Література [2] => Література [3] => Кінофільми [4] => Кінофільми [5] => Кінофільми [6] => Азиев [7] => Кінофільми [8] => Комп.Ігри [9] => Комп.Ігри [10] => Комп.Ігри [11] => UA HPclub [12] => UA HPclub [13] => UA HPclub [14] => UA HPclub [15] => Спілкування [16] => Спілкування [17] => Спілкування [18] => Спілкування ) Как бы у меня там в БД много раз повторяется как Литература так и Кинофильмы, но я же написал DISTINCT чаво оно не работает. То есть мне нужно что бы значения не повторялись в массиве. |
|
------- Отправлено: 18:23, 06-03-2008 | #5 |
Кот Ти Сообщения: 7318
|
Профиль | Отправить PM | Цитировать |
Отправлено: 20:48, 06-03-2008 | #6 |
Ветеран Сообщения: 823
|
Профиль | Сайт | Отправить PM | Цитировать ухты какая загогулина. Я даже не знаю, как это озвучить О.о
if (!in_array($categ['category'], $menu1)) Но спасибо, попробую ща |
------- Отправлено: 21:47, 06-03-2008 | #7 |
Кот Ти Сообщения: 7318
|
Профиль | Отправить PM | Цитировать Да всё просто. Проверка: если значения $categ['category'] в массиве $menu1 ещё нет, значит записываем его туда. Иначе побоку.
|
Отправлено: 22:05, 06-03-2008 | #8 |
Ветеран Сообщения: 823
|
Профиль | Сайт | Отправить PM | Цитировать Большое спасибо, со своей задачей скрипт справляется, но таки выводится на экран ошибка:
Notice: Undefined variable: menu1 in z:\home\localhost\www\uahpclubphp\test.php on line 9 [Денвер: показать возможную причину ошибки] Warning: in_array(): Wrong datatype for second argument in z:\home\localhost\www\uahpclubphp\test.php on line 9 Array ( [0] => Література [1] => Кінофільми [2] => фывфыв [3] => Комп.Ігри [4] => UA HPclub [5] => Спілкування ) В строке То есть как бы не существует еще эта переменная, а мы ее проверяем. Я пробовал прописать ей в начале значение ноль, но все равно не получается. Единственным выходом является добисать еще одно условие:
Хотя нет, та штука не получается так как меню1 изначально и не должно было быть... эх.. запутался А, и ее вопрос. Вы так как то интересно записали условие if без кавычек фигурных, нигде не втречал такого. Когда можна эти кавычки не ставить, я то уверен, что не во всех случаях без кавычек сработает Ухтышка, нашел способ еще один: сделать выборку таким вот образом: $result = mysql_query("SELECT DISTINCT category , title, link FROM menu GROUP BY category", $db); И все получается, без дополнительно условия. Но все же вариант с усовием мне тоже интересен. Просто прописав таким образом выбока оно как-то перемешалось: Точнее упорядочилось по алфавиту Array ( [0] => Комп.Ігри [1] => Кінофільми [2] => Література [3] => Спілкування ) Да и UA HPclub ячейка пропала |
------- Отправлено: 13:27, 07-03-2008 | #9 |
Кот Ти Сообщения: 7318
|
Профиль | Отправить PM | Цитировать Artem-Samsung, я не понял, в этом сообщении содержится вопрос или уже нет?)) Вот кроме этого:
Цитата Artem-Samsung:
Цитата Artem-Samsung:
if (isset($menu1)) { if (!in_array($categ['category'], $menu1)) $menu1[]=$categ['category']; } это можно покомпактнее записать: Цитата Artem-Samsung:
Или вот так: $menu1 = new Array(); (беру по аналогии с JavaScript'ом - не знаю, работает ли это в PHP). |
|||
Отправлено: 14:59, 07-03-2008 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Как сделать обработку $_GET и сборку html-документа екзешником, как multitran.ru? | borg92 | Вебмастеру | 1 | 13-08-2009 10:23 | |
массив $_GET как его обработать | darksmoke | Вебмастеру | 11 | 29-03-2008 00:53 |
|