Array mit Formular übertragen
martin
- php
Hallo, ich habe ein assoziatives Array $artikel[bezeichnung][$i] und möchte dieses mit Hilfe eines Formulars
<INPUT type ='hidden' name ='artikel' value=$artikel>
auf die nächste Seite übertragen. Klappt aber nicht! Was mache ich falsch oder wie kann ich es richtig machen?
Gruß martin
Hallo martin,
<INPUT type ='hidden' name ='artikel' value=serialize($artikel)>
und wieder auflösen mit unserialize()
Gruß aus Berlin!
eddi
Moin,
ich hätte da mal ne Frage, die sich hier anschließt. Ich will auch ein Array an andere Seiten übertragen. Nur will ich das ganze nicht mit Hilfe eines senden-Buttons machen, sondern die Daten sollen jedes Mal übertragen werden, wenn ein Link im Menü geclickt wird. Geht das irgendwie?
Vielen Dank schon mal!
Ditscher
Hiho,
entweder mit JavaScript (sehr unschön) oder indem du den serilisierten Array einfach an die Adresse dran hängst (kann aber zimlich lang werden) oder per Session.
Marc
Hiho,
entweder mit JavaScript (sehr unschön)
nö, will ich nich =)
oder indem du den serilisierten Array einfach an die Adresse dran >>hängst (kann aber zimlich lang werden)
mmhhhhh, dann hätte ich doch nur 255 Zeichen oder so zur Verfügung, oder??
oder per Session.
dann muss ich das wohl machen, oder hat noch jemand ne idee
danke schonmal!
Moin moin Ditscher,
da gibt es viele Spielerein. Sinnvoll sind m. E. aber nur Cookies und Sessions.
Gruß aus Berlin!
eddi
Hallo Martin,
<INPUT type ='hidden' name ='artikel' value='serialize($artikel)'>
und wieder auflösen mit unserialize()
Gruß aus Berlin!
eddi
Hallo, erst einmal schönen Dank.
Ich bekomme auch nach einen wunderschönen string auf die nächste Seite, den ich per echo ausgeben kann. Jetzt brauche ich natürlich wieder ein ARRAY, doch klappt die Funktion:
$artikel_neu = unserialize ($artikel);
bei mir leider nicht. Kann es sein, dass in der php.ini noch Einstellungen vorgenommen werden müssen?
Gruß martin
Hallo martin,
warscheinlich könnte an magic_quotes_gpc liegen. Aber dafür würde ich nicht extra die php.ini bemühen. Versuch mal bitte vorher:
$artikel_neu=unserialize(stripcslashes($artikel));
Gruß aus Berlin!
eddi
Hallo eddi, leider ohne Erfolg.
Meine magic_quotes_gpc stehen auf "on".
Mfg martin
Hallo martin,
folgendes Script läuft bei mir reibungslos:
<?php
$a[0]="yyy";
$a["preis"][8]["zeichen"]="xxx";
$a[7][22]=445;
?>
<html>
<body>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="text" name="if" value='<?php echo serialize($a); ?>'>
<input type="submit">
</form>
<pre>
<?php
print_r(unserialize(stripcslashes($_POST["if"])));
?>
</pre>
</body></html>
Gruß aus Berlin!
eddi
Hallo eddi, bei mir läuft das Script nicht! Wahrscheinlich sind meine Einstellungen anders. Ich habe das Problem jetzt über eine datenbank gelöst. Klappt wunderbar. Vielen Dank. martin
Hello,
das ist hier in 2003 ausführlich beschrieben worden. Müsste man eigentlich im Archiv finden.
Vorgehensweise:
Daten aufbereiten (stripslashes() o.ä.)
Daten in Array speichern
Array serialisieren
Serialisiertes Array mit base64 codieren
Array übertagen
Array wieder decoden
Array wieder deserialisieren
mit Array arbeiten.
Liebe Grüße aus http://www.braunschweig.de
Tom