Страницы PHP двигателя поиска содружественные

Технологии Zend - закодируйте фару штольни - страницы PHP двигателя поиска содружественные
Теперь, когда вы имеете более лучшее вникание проблемы, препятствуйте нам посмотреть разрешение. Для того спайдер для того чтобы траверсировать (и следовательно индекс), котор дали страницу, URL должен быть свободен любого возникновения параметров. Но если, котор дали страница требует, что параметры действуют правильно, то чего можно сделать? Ответ лежит в пользе перемеююого окружающей среды $PATH_INFO, которой вы можете преобразовать URL от…
http://www.zend.com/myscript.php?myvalue=Hello

… к спайдер-содружественной форме:
http://www.zend.com/myscript.php/myvalue/Hello

Заметьте что спайдер-содружественная форма не содержит никакую индикацию что любые параметры будучи пройденными на все. Довольно, оно просто смотрит как мы пробуем достигнуть директории на месте /myscript.php/myvalue/Hello zend.com, и любые ищут спайдер двигателя который достигает страницы не будет иметь никакую тревогу последовать за URL. Но в реальности мы исполняем сценарий myscript.php.

Но что случилось к вашим параметрам?
Как ПОЛУЧИТЬ ваши спрятанные данные

Теперь, когда вы успешно прятали ваши параметры в пределах что кажется, что будет структурой директории, как вы получаете их вне? Когда сценарий PHP исполнен при экстренные данные по путя приложенные к концу filename (по мере того как мы сделали в спайдер-содружественном примере выше), сервер паутины создает перемеююый окружающей среды $PATH_INFO содержа эту информацию. Вы можете после этого достигнуть этой перемеююого окружающей среды через PHP автоматически, и parse он для того чтобы восстановить наши данные. Так наш более предыдущий URL…

http://www.zend.com/myscript.php/myvalue/Hello

… заселил перемеююый $PATH_INFO с:

/myvalue/Hello

… от что вы можете после этого parse и восстановляете пройденную информацию.
Расшифровывать ваши данные

Теперь, когда вы знаете где ваши параметры, следующий шаг расшифровать их в форму которую PHP может использовать. Хотя никакой необходимый метод для делать это, я предположу вы форматировали ваши данные в следующем путе:

/var_name/var_data/var2_name/var2_data/…

Используя этот метод, все которое выйдено:

* сломайте обеспеченный шнур каждое время мы сталкиваемся слеш ("/")
* создайте перемеююые для того чтобы связать, котор дали имена (var_name, var2_name, etc.) с их соответственно значениями (var_data, var2_data, etc.)

С всем из этого в разуме, препятствуйте нам посмотреть некоторый реальный Код.
Сценарий

Как с много мощных методов, Код необходим, что создал эту способность в ваших сценариях не трудн для того чтобы превратиться. Процесс состоит из траверсировать блок основанный на $PATH_INFO, и создать перемеююые основанные на том данные. Под конец, предмет принять URL…

http://www.zend.com/myscript.php/myvalue/Hello

… после этого используйте данные обеспеченные, что в перемеююом $PATH_INFO построить соответствуя перемеююые:

$myvalue = «здравствулте!»
Закодируйте подачу

* Проверите для существования $PATH_INFO
* Разделите $PATH_INFO в блок
* Если общее количество параметров ровно, то добавьте экстренный пустой элемент в конце для того чтобы упростить traversal в следующем шаге
* Траверсируйте блок и создайте перемеююые основанные на данных по $PATH_INFO

<>

если (isset, то ($PATH_INFO)) {

$vardata = взрывают («/», $PATH_INFO);

$num_param = отсчет ($vardata);

если (% == 0 $num_param 2) {, то

$vardata [] = '';
$num_param;
}

для (var $i = 1; $i <>

$$vardata [$i] = $vardata [$i 1];
}
}

? >

Сохранено под Uncategorized |

Выйдите ответ



Пожалуйста впишите Код показанный ниже (проверить что вы людск) прежде чем вы щелчок представляете комментарий.


Защищено предохранителем комментария профессиональный