Webstatt.org - Community seit 2006 - 2012 (2024?)

PHP Value von Textfeld wird nicht erkannt

Avatar user-279
18.07.2007 11:51

Hallo

Ich habe ein merkwürdiges Problem mit.. naja ich weiss leider nicht womit. Warhscheinlich hat es mit PHP auf IIS zu tun, denn auf meinem Xampp läuft es.

ich habe ein Textfeld, indem, im Falle eines Fehlers im Formular, der Text stehen bleiben soll:

<input type="text" name="absender_email" class="absender" value="<?=$absender_email?>" />

Aber im Browser kommt stattdessen einfach "<?=$absender_email?>" als Wert vom Textfeld.. nicht der tatsächliche PHP Wert.

Das komische ist: es läuft wie gesagt auf meinem Xampp und es ist sogar auf der IIS Installation gelaufen. Irgendwann (ich weiss nicht was ich gemacht hätte um das zu verursachen), ist es aber nicht mehr gegangen.

Bevor ihr fragt lächeln
- register_globals ist auf off
- $absender_email ist ein Post Wert den ich mit extract() in ne Variable umwandle
- extract() funzt, die anderen Variablen werden korrekt übernommen
- auch wenn ich eine andere, eigene Variable im Textfeld ausgeben will, klappts nicht

Hat jemand eine Ahnung was das sein könnte? Hab das noch nie erlebt, und ich mache das immer gleich.

Danke,
so long

user-343
18.07.2007 12:09

Es kann sein, dass die Einstellung "short_tags" (oder so ähnlich) auf off steht und du somit <?php brauchen musst, und nicht <?.

Avatar user-279
18.07.2007 12:15

/edit.

das wars! danke!!

user-152
18.07.2007 13:23

Verwenden Sie extract() nicht für nicht vertrauenswürdige Daten wie user-129utzereingaben ($_GET, ...). Wenn Sie dies tun, z.B. weil Sie alten Code der sich auf register_globals verlässt vorübergehend ausführen wollen, so stellen Sie sicher, dass Sie einen nicht überschreibenden extract_type Wert wie EXTR_SKIP verwenden und seien Sie sich bewusst, dass Sie die Daten in der selben Reihenfolge importieren sollen, die in der php.ini in variables_order angegeben wurde.


Soweit dazu lächeln

Avatar user-194
18.07.2007 16:21

Original von user-152
Verwenden Sie extract() nicht für nicht vertrauenswürdige Daten wie user-129utzereingaben ($_GET, ...). Wenn Sie dies tun, z.B. weil Sie alten Code der sich auf register_globals verlässt vorübergehend ausführen wollen, so stellen Sie sicher, dass Sie einen nicht überschreibenden extract_type Wert wie EXTR_SKIP verwenden und seien Sie sich bewusst, dass Sie die Daten in der selben Reihenfolge importieren sollen, die in der php.ini in variables_order angegeben wurde.


Soweit dazu lächeln

Und dazu die offensichtlich fehlende Inhaltsüberprüfung/Escapen -> XSS.

Avatar user-279
19.07.2007 06:27

jaja, ich wusste dass das kommt. ich mag extract und extract mag mich lächeln

user-303
19.07.2007 10:52

extract mit einer gpc variable sollte in einem fatal error enden!