Forum Webscript.Ru
Программирование => PHP => Тема начата: Foshvad от 22 Августа 2002, 12:36:15
-
Вопрос есть. Следующий.
Через parse_str() в скприт сообщаются данные (именно так, и так в данном случае надо)
Есть набор разрешенных имен переменных (их значения проверяются отдельно)
Можно ли как-то обезапаситься от лишних переменных?
-
Сайт работает на ErrorDocument; POST и GET в открываемом по нему index.php запрещены. Все, включая меню, карту сайта и хлебные крошки генериться из шаблонов. Но для работы поиска надо сообщить несколько переменных.
-
спасибо.
я думаю, вместо парсе_стр
надо использовать собственную функцию.
ведь это совсем нетрудно сделать
эксплоде по &
по парам пробежаться проверкой значений, а остальное выкинуть на помойку.
-
RomikChef
хм... это идея.
Я так понимаю, готовой функции в php такой нет?
Что ж, тогда придется сделать.
-
сделаешь, выкинь сюда... PLZ
-
// $urlvars - массив, с именами разрешенных переменных
function parsestr($url) {
global $urlvars;
$url = explode(\'&\',substr($url,1,strlen($url)));
for($i=0; $ilist($name,$value) = explode(\'=\',$url[$i]);
if(in_array($name,$urlvars)) { $GLOBALS[$name] = urldecode($value); }
}
}
-
А нафига:
substr($url,1,strlen($url))
???
-
Я думаю, это попытка избавиться от начального "?", хотя лучше было бы опустить третий аргумент.
-
это попытка избавиться от начального "?",
Тогда уж лучше так IMHO:
ltrim($url, "?");
-
Alexandr
Это можно проделать тысяча и одним способом...
-
Я думаю, это попытка избавиться от начального "?", хотя лучше было бы опустить третий аргумент.
именно , эт я не подумал :(