Проверка на $_GET променливи

bunchevi

Registered
Искам да попитам как се проверява дали $_GET променливата е добавена ръчно направо в url адреса или е изпратена от скрипта? Сетих се за този проблем когато започнах да променям кода за страницирането и сега е на етап, в който добавя всички $_GET променливи в урл-то което се получава за съответната страница, дори и тези които са ръчно добавени от мен в самия урл адрес. Доста се порових в интернет, но така и не открих решение на проблема.

Начина по който съставям урл-тата е следния:
Код:
       if(isset($_SERVER['QUERY_STRING']) && (strlen($_SERVER['QUERY_STRING'])>0))
{$url="?";}
else
{
       $self=$_SERVER['PHP_SELF'];
       $url=htmlentities($self, ENT_QUOTES)."?";

        $arr=$_GET;
        if (array_key_exists('page', $arr)) 
        {unset($arr['page']);
        }
		
        foreach($arr as $key=>$val)
        {
            $prom=urlencode($key)."=".urlencode($val); 
            $url .= htmlentities($prom, ENT_QUOTES)."&"; 
        }
	   }

И накрая добавям и страницата, но това ев кода за странициране който взех от уроците.
 
Записваш си ги в сесии, и правиш проверки където ти трябва. Иначе забрави, да разбереш дали са 'ръчно' добавени, или от скрипта, то е едно и също за PHP-то. А какво си се притеснил? Че можеш ръчно да си смениш page=1 на page=10 ?
 
Не съм се притеснила за това, а защото се нареждат много излишни променливи в адреса. А всички сайтове които гледам като пример, включително и web-tourist.net, са избегнали това и явно е по начина, по който казваш. Мерси много за идеята. Ще се опитам да го направя. Ако все пак някой се сети и за друг вариант нека да пише.
 
bunchevi каза:
Не съм се притеснила за това, а защото се нареждат много излишни променливи в адреса. А всички сайтове които гледам като пример, включително и web-tourist.net, са избегнали това и явно е по начина, по който казваш. Мерси много за идеята. Ще се опитам да го направя. Ако все пак някой се сети и за друг вариант нека да пише.

Хей Сеньорита, хич не разбрах за к'во говориш? Кой линкове/адреси в Туриста са със Сесии? Дай някакъв линк да видим к'во точно имаш на предвид. :shock:
 
Не съм казала, че сайтовете които съм видяла използват сесии, а че явно може би го правят. Ако знаех как са го направили нямаше да пускам темата. Иначе ще се радвам да споделите и други варианти.
 
Всички излишни променливи, може да имат и стойности по подразбиране (т.е. не е нужно да пишеш sort=ASC, а просто да го пропуснеш и скрипта ти ще знае, че трябва сортира така. А когато ти се наложи да сортираш наобратно, си го добавяш в гет параметрите).
 
Нещо не разбрах какво имаш в предвид с това за сортирането. На мен не ми е проблем подредбата на променливите. Сега се опитвам да го направя със сесии, но засега още имам проблем който се опитвам да оправя- на първата страница, която се зарежда няма проблеми- всички променливи, които съм запазила в сесия са си в сесийната променлива, но когато натисна да се зареди друга страница ми дава, че не съм натиснала бутона търси в случая.
 
Всъщност грешката е била в мен, всичко си върви перфектно със сесийните променливи. Мерси много за идеята!
 

Back
Горе