Array mittels POST übergeben

NiciB

Erfahrenes Mitglied
Hallo, ich will ein Array mittels POST übergeben, aber irgendwie will das nicht funktionierten...

Das Array $spielernummern auf der ersten Seite mit folgendem Code auszugeben geht problemlos...
PHP:
foreach($spielernummern as $nummern)
	echo $nummern;

Danach will ich es mit einem hidden-field übergeben

HTML:
<input name="nrs" type="hidden" value="<?php echo $spielernummern; ?>">

Auf der 2. Seite will ich es dann wieder ausgeben

PHP:
$nrs=array();
$nrs=$_REQUEST[nrs];

foreach($nrs as $nummern)
	echo $nummern;

da kommt aber folgender Fehler:
Warning: Invalid argument supplied for foreach() in ........
 
Zuletzt bearbeitet:
Ist vielleicht ein wenig kompliziert was Du machst.
du kannst ein Array ganz einfach per serialize() und unserialize() umwandeln, übertragen und wieder zurück bekommen ohne die Arraystruktur zu verlieren.
 
hmmm, ich habs jetzt so versucht...

PHP:
echo '<input name="nrs" type="hidden" value="'. serialize($spielernummern).'">';

und dann auf der nächsten Seite:

PHP:
$nrs=array();
$nrs= unserialize($_REQUEST[nrs]);
echo gettype($nrs);

foreach($nrs as $nummern)
	echo $nummern;

bei gettype kommt boolean raus, und die Fehlermeldung bleibt die gleiche...
Invalid Argument - ist aber irgendwie klar, da es ja ein boolean und kein array ist
 
@NiciB:
Überprüfe das Array mal vor dem Senden mit
PHP:
print_r($spielernummern);
und nach dem Senden mit
PHP:
print_r($nrs);

So kannst Du überprüfen ob die Struktur überhaupt stimmt und ob vor dem Senden bereits ein Fehler vorliegt. Da ich Deine Daten nicht kenne kann ich natürlich schlecht helfen ohne zu Raten :)
 
probiers mal so. dann sollte es gehen :)

PHP:
foreach($spielernummern as $nummern) {
	echo $nummern; 
	echo '<input name="nrs[]" type="hidden" value="'.$nummern.'>';
}

PHP:
$nrs=array(); 
$nrs=$_REQUEST[nrs]; 
 
foreach($nrs as $nummern) 
echo $nummern;
 
Außerdem würde ich an deiner Stelle $_POST anstatt $_REQUEST nehmen, es sei denn du weißt nicht ob die Daten vom Query_String oder vom POST-Speicher kommen.
 
Zurück