$_POST-variablen werden nicht richtig übergeebn

bluedisc

Aktives Mitglied
Thread Starter
Dabei seit
12.12.2009
Beiträge
371
Reaktionspunkte
9
Hallo!

Ich habe ein Formular mit zwei Submit-Buttons. Je nach Knopfdruck Wird halt das action bestimmt. Jetzt werden aber statt den Formularfelderinhalt nicht richtig übertragen. Es werden nur 1en übertragen. Mache ich irgendwas falsch?

Viele Grüße,
bluedisc
 
da meistens Millionen von Menschen mit solchen Programmiersprachen zum Ziel kommen sollte die Frage nicht lauten "mache ich etwas falsch?" sondern "Was mache ich falsch?" und dazu Bedarf es schon etwas Source-Codes! Auch die Annahme das die POST-Variablen nicht richtig übergeben werden teile ich nicht. Du übergibst vielleicht ungewollt etwas Falsches oder liest falsch aus... Solltest Du tatsächlich auf eine Anomalie gestoßen sein, bin jedenfalls gespannter Mitleser!
 
Bestellung.php

Code:
<form method="post>
<input type="text" name="Name">
<input type="submit" onClick="form.action='select.php';">
<input type="text" name="email">
<input type="submit" onClick="form.action='Bestellung2.php';">

select.php

Code:
//Die input felder
$hidden = '<input name="Name" type="hidden" value="' . isset($_POST['Name']) . '">'

Im Quellcode stehen nur 1en.

Viele Grüße,
bluedisc
 
Das Ergebnis von isset ($_POST['Name']) ist true, also 1.

Wenn Du den Inhalt ausgeben willst, nimmst Du $_POST['Name'] oder besser
Code:
(isset ($_POST['Name']) ? strip_tags ($_POST['Name']) : '')
Dann bekommst Du keine Fehlermeldung wenn die Variable nicht gesetzt ist und es kann auch kein fremder Code ausgegeben werden.

PS: Wenn es um einen Bestellprozeß geht, ist es keine gute Idee, die Variablen über hidden inputs auf den Folgeseiten mitzuschleppen. Sowas kannst Du in der Session speichern.
 
http://webserver/shop/bestellung.php?ID=42;UPDATE+USER+SET+TYPE="admin"+WHERE+ID=23

*räusper* ... ich ahne schreckliches...
 
ja, das ist dann die 2te Stunde in der Formular-Hobbythek :jaja:
 
Ihr seid ja einen Schritt voraus. Eben hatten wir doch erst den XSS-GAU und Ihr fangt schon mit SQL Injections an. Das ist doch zuviel an einem Tag zu lernen für den TE ;) Ich hoffe bloß, das sind nur Übungen zum PHP-Lernen und er stellt das nicht online...
 
das funkt alles ohne MySQL. Muss ich dann auch die mysql_escape... machen?
 
Nein, aber das wichtigste ist folgende Regel: Niemals fremden Inhalten vertrauen, alle externen Variablen validieren. Dann kann schon nicht mehr ganz so viel schiefgehen.
 
wie soll ich jetzt die POST Sachen in SESSION umwandeln? Methode="Session" gibs ja nicht, oder?
 
Hallo!

Soll ich die Variablen Zuweisung so machen?

PHP:
<?php
session_start();
$_SESSION['Name'] = $_POST['Name'];
usw
?>

Viele Grüße,
bluedisc
 
was meinst du mit validiert ?

Viele Grüße,
bluedisc
 
Zurück
Oben Unten