Mám něco takovýho:
$ovoce[4]="hrusky";
$ovoce[5] = "jablka";
A jak teď bude vypadat odkaz, jestliže tam chci poslat toto pole s uvedenými parametry?
vytrina.php?ovoce[5]=jablka&ovoce[4]=hrusky
?
Děkuji
zkoušel jsi to? Kdo to má za tebe dělat? Kdybys to zkusil a napsal, že to nechodí, tak budiž, ale takhle?
Nojo. Člověk je bytos líná, teda alspoň já. Sorry
imho se pole vkládá takto: skript.php?ovoce=jablka&ovoce=hrusky&ovoce=..
ale abys dal požadované indexy, tak to nevím, v nejhoršín za začátek naflákáš ovoce=&ovoce=&ovoce.... tolikrát, kolikrát bude třeba na posunutí indexu
DA, takhle to nejde. Tohle vezme poslední výskyt toho ovoce. To, jak navrhoval xili je dobře, akorát možná se bude bránit těm hranatým závorkám, které by se museli zaurlenkodit.... Kdyby si to Xili zkusil, věděl by, že to tak jde...
Nemusi se ani zakodovavat...
:-)
no já se nechcu hádat, protože si tím naprosto nejsem jistý, ale mám pocit, že jsem předávání pole tímto způsobem fak někde viděl v praxi.
tak už jsem to našel... třeba tento odkaz:
http://toplist.cz/stat/?menu=4096&menu=2048&menu=64&menu=1024&menu=512&menu=32&menu=256&menu=4&menu=128&menu=8&menu=16&menu=8192&menu=2&menu=16384&menu=1&menu=32768&kdy=dnes&n=87021
furt se tam opakuje menu=cosi, imho to vytvoří pole menu s danýma hodnotama, ne?
Ted jsi me trochu zviklal... ale není to tak. Tohle leze z blbe napsaneho skriptu, kdy se vezme cela url a tupe se prida dalsi... taky jsem to kdysi resil.
tak jsem zkusil umazat první dva parametry a výsladná stránka je jiná, takže to musí evidovat všechny duplicitní parametry a řekl bych, že asi do pole, ne? Nebo jak jinak by to pak mohlo jít šikovně zpracovat?
viz.
http://toplist.cz/stat/?menu=64&menu=1024&menu=512&menu=32&menu=256&menu=4&menu=128&menu=8&menu=16&menu=8192&menu=2&menu=16384&menu=1&menu=32768&kdy=dnes&n=87021
Zkus
- nejdrive na to pole použít funkci serialize (vytvoříš z pole řetězec)
- tento řetězec zakodovat bud urlencode nebo rawurlencode
- retezec poslat pres odkaz (bacha, max delka odkazu je tusim 255 znaku)
- na druhe strane dekodovat bud urldecode nebo rawurldecode
- prevezt zpet na pole funkci unserialize
NEZKOUSENO! Musis bojovat sam.
Popis funkci:
http://us3.php.net/manual/cs/function.urlencode.php
http://us3.php.net/manual/cs/function.rawurlencode.php
http://us3.php.net/manual/cs/function.serialize.php
AFAIK z skript.php?ovoce=jablka&ovoce=hrusky&ovoce=merunky dstaneš pole, ale musí se to někde zadat. Kdisy sem to někde čet, ale nevim kde.
Neštvě te mě, najdu vám to v RFC....
Tak RFC říká, že si tam můžete dát, co chcete. V PHP manuálu jsem nenašel nic o tom, jak by se dalo zapnout strkání do pole (neznamená, že to tam není). A tak jediná možnost co mě napadá je rozparsovat si sám QUERY_STRING.
Teď mě napadá, že vzhledem k tomu, že php udělá split podle & a pak dá do $_GET pole proměnné stylem
$_GET['vlevo od ='] = 'vparvo od =';
tak v PHP dostanu ten poslední výskyt promenné..
Jestli nekdo vite, jak se da nastavit, aby to strkal do pole, tak to sem napiste, zajímá mě to...
<HTML>serialize() a unserialize() staci</HTML>
Sice nechapu jakej to ma smysl prenaset pole pres URL ale kdyz uz tak radsi RELACE!
test.php
----------
<?
session_start();
$pole=array("prvni", "druhy", "treti");
$_SESSION[prenes]=$pole;
?>
<a href="test2.php">2nd</a>
test2.php
------------
<?
session_start();
print_r ($_SESSION[prenes]); // rychla ukazka
print $_SESSION[prenes][0]; // prvni klic
?>