Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Programmierung mit PHP  Teil von  Formulare und PHP
Professional CronJob-Service

Suche

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP?
In über 130.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 
 
Auswertung von Formularen: Seite 2

SELFPHP ist Shopware Solution Partner
Shopware ist ein vielfach ausgezeichnetes Onlineshop-System der shopware AG, das auf PHP. Zend Framework und SQL basiert.
SELFPHP unterstützt Sie als Shopware Solution Partner bei der Konzeption, Programmierung und Realisierung Ihres Onlineshops und passt Shopware bei Bedarf an Ihre Unternehmensbedürfnisse an. Weitere Informationen



Das vorliegende Beispiel war vergleichsweise einfach. Es gibt jedoch Formularelemente, die mehr als einen Wert zurückgeben können. So ist es in HTML prinzipiell erlaubt, mehrere Elemente mit demselben Namen zu belegen. Natürlich sollten Sie dies möglichst vermeiden, aber es wäre nicht schlecht, darauf angemessen reagieren zu können. Eine typische Anwendung sind mehrere Checkboxen in einer Gruppe:

<input type="checkbox" name="thema" value="Autos">
<input type="checkbox" name="thema" value="Filme">
<input type="checkbox" name="thema" value="Essen">
<input type="checkbox" name="thema" value="Sport">

Es gibt auch Fälle, in denen Mehrfachangaben ausdrücklich erwünscht sind. So können Sie beispielsweise bei <select> mit dem Attribut multiple eine Mehrfachauswahl zulassen:

<select name="thema" size="4" multiple>
  <option value="Autos">Autos</option>
  <option value="Filme">Filme</option>
  <option value="Essen">Essen</option>
  <option value="Sport">Sport</option>
</select>

Bei der Auswertung steht Ihnen diese Auswahl nur in einer einzigen Variablen zur Verfügung. Was passiert mit den Werten? Es könnte sein, dass PHP sie als Array erkennt. Aber was geschieht, wenn Sie die Variable abrufen?

<html>
<head>
<title>Mehrfach Auswahl</title>
</head>
<body>
<form name="form1" method="post" action="<?php echo $PHP_SELF ?>">
  <p>
    <select name="thema" size="4" multiple>
      <option value="Autos">Autos</option>
      <option value="Filme">Filme</option>
      <option value="Essen">Essen</option>
      <option value="Sport">Sport</option>
    </select>
  </p>
  <p>
    <input type="submit" name="Submit" value="Submit">
  </p>
</form>

<?php
  if ($_POST['thema']) echo "Thema enthält: $_POST[thema]";
?>

</body>
</html>

Wie Sie sehen werden, wird im Fall der Mehrfachauswahl lediglich immer nur der letzte ausgewählte Wert der Auswahlliste angezeigt. Offensichtlich wird kein Array gebildet, denn die Auswahl $thema[0] verweist nicht wie vermutet auf den ersten Eintrag der ausgewählten Elemente; die Zeichenkette wird als Array erfasst, und lediglich der erste Buchstabe wird ausgegeben.

Wie sieht nun die Lösung des Problems aus? Sie müssen PHP bereits mit dem Namen der Variablen mitteilen, dass ein Array verwendet werden soll, und dafür folgende Stelle im Skript anpassen:

<select name="thema[]" size="4" multiple>

Sie kennzeichnen den Namen mit eckigen Klammern [], die in HTML keine weitere Bedeutung haben. PHP nimmt nun an, dass mehr als ein Wert folgt, und erzeugt ein Array. Dies geschieht natürlich auch dann, wenn tatsächlich nur ein Wert vorliegt. Die Auswertung kann dann recht komfortabel mithilfe einer Schleife durchgeführt werden:

<?php
  if ($_POST['thema']) {
    echo "Es sind folgende Themen enthalten:<br>";
    foreach($_POST['thema'] as $element) {
      echo "$element<br>";
    }
  }
?>




Auswertung von Formularen Seite 1
 




:: Premium-Partner ::

Webhosting/Serverlösungen

MECO Systemhaus GmbH & Co. KG weitere Premium-Partner
 

:: SELFPHP Sponsor ::

DM Solutions e.K. weitere Sponsoren
 


:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Webhosting/Serverlösungen

Suchen Sie den für Sie passenden IT-Dienstleister für Ihr Webhosting-Paket oder Ihre Serverlösung?

Sie sind nur ein paar Klicks davon entfernt!


 

Ausgewählter Tipp im Bereich PHP-Skripte


Dateien inkl. Unterverzeichnissen kopieren

Weitere interessante Beispiele aus dem SELFPHP Kochbuch finden Sie im Bereich PHP-Skripte
 

SELFPHP Code Snippet


Byte in Kibibyte (Binärpräfix) umrechnen

Weitere interessante Code Snippets finden Sie auf SELFPHP im Bereich PHP Code Snippets
 
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de