28. Oktober 200916 j Hallo zusammen, ich habe folgendes Problem: Ich habe in einem Array mehrere Variablen und auch noch einen Array, der mit form-action auf die neue Seite übergeben wird. ($_post) sieht so aus: array(10) { ["info"]=> string(7) "Vereins" ["id"]=> string(0) "" ["name"]=> string(0) "" ["email"]=> string(0) "" ["mobile"]=> string(0) "" ["telefon"]=> string(0) "" ["plz"]=> string(0) "" ["ort"]=> string(0) "" ["strasse"]=> string(0) "" ["medium"]=> array(1) { [0]=> string(1) "2" } } ich würde jetzt gerne das array "medium" (ganz am ende) als post-variable einfach mit hilfe von form action als post-variable auf die nächste PHP-Seite-2 übermitteln. Dazu muss man das array da einfach rausziehen, oder? Geht sowas? Oder muss ich erst das Array auslesen? Hoffe, ich habe mich verständlich gemacht. Vielen Dank im Voraus! Grüße Mario
28. Oktober 200916 j Hi Ted, sehr geil, danke. Muss ich gleich mal ausprobieren. Vielen Dank für den Tipp. Wobei: Lese gerade "array_merge — Führt ein oder mehrere Arrays zusammen" Will ja nicht zusammenfügen, sondern auslesen?!? Ok, scheint ja trotzdem das richtige zu sein. Grüße Mario Bearbeitet 28. Oktober 200916 j von mb72
30. Oktober 200916 j Also aus der Beschreibung werde ich nicht schlau. Dieser Befahel dient doch nur zum Zusammenführen. Aber ich will doch das Gegenteil erreichen?!
30. Oktober 200916 j hm.. das war das was ich aus deiner problembeschreibung rausgelesehn hatte... was genau moechtest du nun tun? einfach nur ein array mit hilfe eines forms von seite 1 auf seite 2 bringen? wenn ja kannst du die felder in deinem formular zbsp als hidden-input anfuegen wenn nein, beschreib dein problem noch einmal anders Ted
30. Oktober 200916 j ja, schätze meine beschreibung war zu übel: ok, also ich übergebe ein array mittels method"post" und form action: wenn ich dann die variable auf seite 2 mittels vardump ausgebe, bekomme ich dieses angezeigt: array(10) { ["info"]=> string(7) "Vereins" ["id"]=> string(0) "" ["name"]=> string(0) "" ["email"]=> string(0) "" ["mobile"]=> string(0) "" ["telefon"]=> string(0) "" ["plz"]=> string(0) "" ["ort"]=> string(0) "" ["strasse"]=> string(0) "" ["medium"]=> array(1) { [0]=> string(1) "2" } } ich verstehe das so, dass das ein array ist. und in diesem array befindet sich noch ein array names medium ["medium"]=> array(1) { [0]=> string(1) "2" } an diesen array ["medium"] möchte ich jetzt auf seite 2 ran. aber das klappt irgendwie nicht. ich kann ihn nicht als variable ansprechen. hoffe, es ist etwas verständlicher geworden.
4. November 200916 j Hi Ted, sorry, kann erst jetzt antworten. Danke, ja, stimmt, ich bekomme die 2 angezeigt. Aber wie kann ich jetzt auf die Werte in [medium] zugreifen. Bearbeitet 4. November 200916 j von mb72
4. November 200916 j hat er doch schon beschrieben o.0 $medium = $_POST['medium']; tada das array medium ausm post steht jetzt in der variablen $medium, fragen?
4. November 200916 j mhh.. ok, bei mir steht dort das Wort "Array", wenn ich die Variable $medium mit echo ausgebe.
4. November 200916 j wahrscheinlich weil es auch eins ist, hast du ja selbst festgestellt. echo $medium[0]; $medium[0] = 5; $medium[1] = 9; $medium[2] = 3; var_dump($medium); PHP: Arrays - Manual
5. November 200916 j ja, kann es jetzt mittels einer for-schleife auslesen. vielen dank schonmal, auch für den link. aber, wie mache ich es, dass ich dieses array noch einmal mittels post "durchreichen", auf die nächste php-seite. ich habe es mit: echo "<input type='hidden' name='medium[]' value='" . serialize($medium) . "'>"; probiert. Das klappt auch, wenn ich mir var_dump auf der nächsten php-Seite anzeigen lasse. ABER wie bekomme ich die störenden Elemente da raus?? Will ja nur den String "Berliner Zeitung" haben. "a:4:{i:0;s:16:\"Berliner Zeitung\" ich glaube auch, dass das dann kein array mehr ist, oder? er gibt mir im var_dump nämllich nur einen langen String mit allen Namen an. Bearbeitet 5. November 200916 j von mb72
5. November 200916 j ich habe die Lösung mit "base64_decode($_POST['medium'])" gefunden. Vielen Dank nochmal !!! Gruß Mario
5. November 200916 j naja du schiebst es serialisiert in das feld, also muss es danach auch wieder un-serialisiert werden. also $medium = unserialize($_POST['medium']); dann hast du auch wieder ein array und das input brauchst du da wohl nicht als array zu schreiben echo '<input type="hidden" name="medium" value="'.serialize($medium).'" />';
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.