ugrás a tartalomhoz

tömb átadás <input type='hidden' ... -al

figyuri · 2008. Jan. 4. (P), 10.20
Sziasztok, -persze meg tudom oldani másképp (átalakítom a tömböt string -é, majd átadom, s vissza), de azért gondoltam rákérdezek, talán csak én bénáztam el valamit azért nem müködik...

print "<FORM ACTION='../program/s_regisztracio.php' METHOD='POST'>;

while ($myrow = mysql_fetch_array($result))
{
...
$lefoglalt_datum[] = $myrow["datum"];
...
}
print_r($lefoglalt_datum); -- ki is írja szépen...
<input type='hidden' name='lefoglalt_datum' value='".$lefoglalt_datum."'>

majd átveszem az s_regisztracio.php -ben :

$lefoglalt_datum=$HTTP_POST_VARS["lefoglalt_datum"];

de a :
print_r($lefoglalt_datum); --csak ennyit ír ki: Array ( [0] => Array )

Kösz a segítséget : -gyuri- (amúgy B.Ú.É.K ! mindenkinek)

u.i.: ha nem lehet átadni akkor használjam az explode ill. implode -t ?
 
1

kukacoskodik a kód? :)

griphons · 2008. Jan. 4. (P), 10.37
Próbáld azt, hogy más nevet adsz az inputnak, ne lefoglalt_datum legyen.
Az világos, hogy a kód tömbnek érzékeli a $lefoglalt_datum változót a s_regisztracio.php-ben. Hogyan van deklarálva az eredeti $lefoglalt_datum? Használj más elnevezést a s_regisztracio.php-ben, hogy egyértelműen más változóról legyen szó.
A $HTTP_POST_VARS["valami"] helyett a $_POST["valami"] nem működik?

(ja és sztem kódokat formázással küld, mert úgy átláthatóbb)

szerk: ja most látom, hogy tömböt akarsz átadni inputtal (figyelmetlen vok :) )
én úgy tudom, hogy input nem tud tömböt fogadni, ergo vagy több inputot csinálsz, vagy implodeval egybegyúrod a tömböt, és átadás után explodeval szétszeded.
2

szvsz

DsA · 2008. Jan. 4. (P), 12.03
talán így:
<input type="hidden" name="lefoglalt_datum[]" value="'.$lefoglalt_datum.'" />
lehet h hülyeség de én kipróbálnám
DsA
3

RTFM

zila · 2008. Jan. 4. (P), 13.15
Tömb elemeit nem tudod kiiratni egy sima echo $tomb_neve utasítással. implode-dal stringgé alakítva már igen, esetleg serialize

Egyébként RTFM:
http://hu2.php.net/manual/en/language.types.array.php
http://hu2.php.net/array
4

félreérted

gex · 2008. Jan. 4. (P), 13.24
nem az echo-ról van szó, hanem hogy az input name attribútuma ne "lefoglalt_datum" hanem "lefoglalt_datum[]" legyen. mert csak úgy tud tömböt átadni.
5

Szerintem nem értem félre

zila · 2008. Jan. 4. (P), 14.47
Az eredeti kérdésben az a gondja, hogy miután kiírja a hidden inputot és elküldi a formot a post-ban az látszik, hogy "Array" (nyilván, mert simánn echoval tenné bele a hiddenbe), holott előtte a print_r jól mutatja a tömböt (nyilván :)

Persze ha a $lefoglalt_datum egy php tömb akkor ez a példakód is rossz lesz, függetlenül a []-től:
<input type="hidden" name="lefoglalt_datum[]" value="'.$lefoglalt_datum.'" />
7

akkor én értettem félre

gex · 2008. Jan. 4. (P), 18.14
a témanyitás elég zavaros volt, én feltételeztem, hogy maga az input is a while ciklusban keletkezik és az a probléma, hogy nem tud tömböt átadni a formból. erre jó lett volna DsA megoldása. de most, ahogy te megfogalmaztad már kezdem érteni én is az eredeti kérdést, csak azt hittem DsA-nak válaszoltál. úgyhogy bocsánat, én értettem félre.
6

Megoldottam...

figyuri · 2008. Jan. 4. (P), 15.03
Kiprobaltam mindent amit javasoltatok, sajna kevés sikerrel, ezért maradt a string -é alakítás, majd átadás...
Hasznaltam mar ennel sokkal "csunyabb" megoldasokat is, ezert ez a megoldas meg boven belefer, de ha netan megis lehetseges akkor -csak- okulaskent tovabbra is erdekel...

Koszonettel : -gyuri-
u.i.: -remelem a forras mindorokke rejtve marad... :-)
8

nekem ez ugrik be

razielanarki · 2008. Jan. 4. (P), 21.22
ha az volt a cél hogy egy tömböt adj át post-on keresztül, nekem ez ugrik be először:

$tomb = array (...);

foreach ($tomb as $key => $value)
{
   print ('<input type="hidden" name="tomb['.$key.']" value="'.$value.'" />');
}
elvileg a visszakapott $_POST['tomb'] így a kulcsokat és az értékekek is megtartja.
9

Manual

Ronyn · 2008. Jan. 5. (Szo), 13.12
A php a kivulrol érkzo változokat minden esetben string-é alakitja,vagyis a mukodése igy helyes...
ezèrt nincs muködik egy tomb ilyen modon valo tovâbbitása...
RTFM)))
10

gyengén típusos nyelv

razielanarki · 2008. Jan. 5. (Szo), 23.49
A php egy gyengén típusos nyelv, itt az értékek vannak előtérben nem az adattípusok.

de igazad van a megkapott tömb csak "virtuálisan" lesz ugyanaz :)
feltétlelezve persze hogy az elemek nem tömbök, objektumok (ezek is megoldhatók rekurzióval), vagy resource-k (ezek már nem annyira)