logokr8 PHP Workshop

back next PHP-Workshop: Formularverarbeitung 2

Anspechen der Formular-Eingaben in PHP-Variablen

 

Im einfachsten Fall landen die Eingaben in Formularfelder automatisch in entsprechenden globalen PHP-Variablen. So im ersten Beispiel die PHP-Variablen $m und $v für die Formularfelder mit name="m" und name="v".

 

Da diese Funktionsweise aber ein Sicherheitsrisiko darstellt, wird sie bei der Konfiguration von PHP (php.ini) häufig deaktiviert (register_globals = Off). In einem solchen Fall muss man dann die Formulareingaben mit ein paar eigenen PHP-Befehlen ansprechen:

 

<?php

  $m = $HTTP_POST_VARS['m'];

  $v = $HTTP_POST_VARS['v'];

  $e = ($m/2) * $v * $v;      /* Energie in Joule */

...

?>

 

Mit dem folgenden PHP-Script lesen wir einfach alle Formularfelder aus dem assoziativen Array in lokale Variable ein:

<?php

  $form_vars = strtolower($REQUEST_METHOD) == 'get' ? $HTTP_GET_VARS : $HTTP_POST_VARS;

  foreach($form_vars as $var => $value) {

       $$var = $value;

  }

?>

 

Was lernen wir:

  1. Formulareingaben werden in dem assoziativen Array $HTTP_POST_VARS bzw. $HTTP_GET_VARS zur Verfügung gestellt (ja nach Method)l.
  2. In der Konfigurationsdatei php.ini wird durch register_globals = On bestimmt, dass Formulareingaben in globalen PHP-Variablen landen.

 

 

 

Dietrich Kracht. Copyright © 2002. All rights reserved. Page last modified: 2002-08-23