Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Praktische Informatik (http://www.informatikerboard.de/board/board.php?boardid=6)
--- PHP hiddenfield posts (http://www.informatikerboard.de/board/thread.php?threadid=184)


Geschrieben von Scio am 29.04.2007 um 16:49:

  PHP hiddenfield posts

Guten Tag,

Habe da ein php problem. bei einem bestell vorgang der folgendermaßen aussieht:

bestellung konfigurieren (bestellung1.php) --> daten aufnehmen (bestellung.php) --> daten auswerten und per mail versenden (auswertung.php)

gehen Daten verloren. Und zwar beim Konfigurieren der Bestellung. Nun möchte ich das bestellung1.php die formulardaten in bestimmte hiddenfields von bestellung.php postet.

kann mir da jemand helfen?

danke



Geschrieben von Crotaphytus am 29.04.2007 um 19:52:

 

Warum regelst du das nicht einfach über Sessions? Ansonsten sollten die Daten ja per POST von bestellung1 nach bestellung übertragen werden. Das faulste dürfte hier ne Schleife über sämtliche Elemente des $_POST-Arrays sein, wobei automatisch die hidden-Felder erstellt werden. Einfach den Key des Arrays in name reinschreiben und den Inhalt in value.

Wenn du mir nicht folgend konntest... Nun, dann solltest du drüber nachdenken, ob du eine doch nicht ganz unkritische Funktion wie eine Bestellung wirklich selber programmieren willst...



Geschrieben von Scio am 29.04.2007 um 21:26:

  re

Nun, ich denke nicht das es nötig ist darüber nachzudenken. Programmiert wird was programmiert werden muss.

hier meine lösung für alle interessenten:

while(list($strName,$value) = each($_POST)) {
if(get_magic_quotes_gpc())
{
$strName = stripslashes($strName);
$value = stripslashes($value);
}
echo "<input type='hidden' name='$strName' value='$value' />";
}



Geschrieben von TheBigfoot am 24.05.2007 um 22:20:

  RE: re

Zitat:
Original von Scio
Nun, ich denke nicht das es nötig ist darüber nachzudenken. Programmiert wird was programmiert werden muss.

hier meine lösung für alle interessenten:

while(list($strName,$value) = each($_POST)) {
if(get_magic_quotes_gpc())
{
$strName = stripslashes($strName);
$value = stripslashes($value);
}
echo "<input type='hidden' name='$strName' value='$value' />";
}


Moin,
also ich weiss echt net warum immer alle each und list benutzen wenns für sowas ne Foreach Schleife gibt ...

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
<?php
    // ...
    foreach ($_POST AS $key => $value) {
        echo '<input type="hidden" name="'.htmlspecialchars($key).'" value="'.htmlspecialchars($value).'"/>';
    }
    // ...
?>


Zu deinen verschwundenen Daten:
ich vermute mal da liegen Mehrdimensionale Arrays vor, deine Lösung deckt diesen fall leider nicht ab. also quasi das ganze in eine Funktion packen und Rekursiv aufrufen if is_array($_POST['$key'])

HTH

MfG
TheBigfoot


Forensoftware: Burning Board, entwickelt von WoltLab GmbH