Autor Zpráva
slovakCZ
Profil
Ahoj,

mám takový dotaz, potřebuji parametry url (a jejich hodnoty) vložit do pole, kde klíč bude parametr a value bude jeho hodnota. Takže když mám např url: test.cz?sekce=novinky&clanek=uvodni, tak bych potreboval takoveto pole:
array("sekce"=>"novinky", "clanek"=>"uvodni")


mám zatím hotový kus funkce, která si vezme parametry z url ( když jí nejsou předané ) a tyto parametry rozdělí podle "&" na pole. Takže mám takovéto pole: ("sekce=novinky", "clanek=uvodni"). Nyní to ještě potřebuji rozdělit podle znaku "=" a to se mi pobuhžel nedaří (konkrétně se mi nedaří sestavit požadované pole s klíčem (jméno parametru) a hodnotou (hodnota parametru).

Děkuji za vaše rady a zde už kus kódu:
<?php
	function parseQueryString($string = NULL){
		
		// define string
		if(!$string)
		{
			$string = $_SERVER['QUERY_STRING'];			
		}
		
		// explode string -> make array
		$string = explode("&", $string);
		
		$somethind = array();
		foreach ($string as $s) {
			// kod co rozdeli string podle "=".. nedari se mi sestavit spravne pole :(
		}
	}
?>
Kcko
Profil
slovakCZ:
http://cz.php.net/manual/en/function.parse-str.php
slovakCZ
Profil
díky, nakonec jsem v komentářích našel co jsem potřeboval:
<?php
	function parseQueryString($string = NULL){
		
		$return = array(); 
		
		// define string
		if(!$string)
		{
			$string = $_SERVER['QUERY_STRING'];			
		}
		
		// explode string -> make array
		$pairs = explode("&", $string);
		
		foreach ($pairs as $pair) { 
        	list($k, $v) = array_map("urldecode", explode("=", $pair)); 
			$return[$k] = $v; 
    	} 
		
    	return $return;
	} 
?>
Tori
Profil
Asi blbý dotaz, ale: vím, že se parsování url používá, ale jakou to má vlastně výhodu oproti použití $_GET?
slovakCZ
Profil
no konkretne u parametru vyuziju $_GET['param'], chtel jsem se spise pripravit na situaci, kterou budu resit predpokladam dnes pozde v noci a uz mi nikdo nebude moct poradit pac budou vsichni spat :) ta situace bude nasledujici

mam soubor .htaccess a v nem:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]


ted zadam do browseru tuto url: mujweb.cz/15-nejaky-sekce1/sekce2/sekce3/sekce4/14-nazev-sekce/clanek.html

v php si ziskam tuto cestu takto:
$_SERVER['REDIRECT_URL']


pote budu potrebovat rozdelit do poli jednotlive sekce (podle "/").. dale kdyz sekce zacina ID (to znamena, ze bude zacinat cislici, pote bude pomlcka a pote nejaky string) tak jeste toto rozdelim do pole, kde cislo (ID) bude klic, jinak klicem bude nazev sekce.. predpokladam tedy, ze to bude podobna situace jakou jsem resil ted :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0