PHP


Hypertext Preprocessor, eine Serverseitige Interpreter Sprache, im Gegensatz zu HTML4.x oder JavaScript übermittelt PHP den Quelltext nicht direkt an den Browser, sondern lässt ihn erst vom Interpreter des Webservers ausführen.

Die Ausgabe des Skriptes wird dann meistens als HTML Seite and den Client (Browser) übergeben. Es ist aber auch möglich andere Datentypen wie z.B. PDF Dateien zu generieren. Der PHP Quelltext bleibt auf dem Server, nur der generierte Code ist für den Besucher einsehbar. PHP kann Formulare auswerten und funktioniert mit verschiedenen Datenbanksystemen wie z.B. Postgresql, Mariadb und MySQL.


<?php
    [Anweisung(en)]
    ....
?>






PHP wurde 1995 von Rasmus Lerdorf entwickelt. PHP stand damals noch für Personal Home Page Tools und war ursprünglich eine Sammlung von Perl Skripte. Bald schrieb er jedoch eine größere Umsetzung in C, worin PHP auch heute noch geschrieben ist. Das schließlich veröffentlichte PHP/FI (FI stand für Form Interpreter) war Perl sehr ähnlich, wenn auch viel eingeschränkter, einfach, und ziemlich inkonsistent.

PHP 3 wurde von Andi Gutmans und Zeev Suraski neu geschrieben, da das inzwischen erschienene PHP/FI 2 ihrer Meinung nach für eCommerce zu schwach war. Auch die Bedeutung der Abkürzung „PHP“ wurde hierbei geändert. Lerdorf kooperierte mit Gutmans und Suraski und die Entwicklung von PHP/FI wurde eingestellt. Die von Gutmans und Suraski gegründete Firma Zend Technologies Ltd. entwickelte in der Folge die Zend Engine 1, die das Herz von PHP 4 darstellt. Da das World Wide Web Ende der 1990er Jahre stark wuchs, bestand großer Bedarf an Skriptsprachen, mit denen sich dynamische Webseiten realisieren ließen.


Meilensteine

  • PHP 2.0.0 bzw. PHP/FI, erschienen am 12. November 1997
  • PHP 3.0.0, erschienen am 6. Juni 1998
  • PHP 4.0.0, erschienen am 22. Mai 2000
    • Einfaches OOP hinzugefügt
    • Sessions hinzugefügt
  • PHP 5.0.0, erschienen am 13. Juli 2004
    • OOP verbessert
    • Exceptions hinzugefügt



FIXME



phpinfo


Gibt eine Vielzahl an Informationen über die aktuelle PHP Konfiguration, wie Server Informationen, PHP Version, Extensions, Pfade, Module u.w., als HTML Datei, im CLI-Modus als reinen Text aus.


Syntax:

  • phpinfo([optionen]);




Optionen:

Name Wert Beschreibung
INFO_GENERAL 1 Pfad zur php.ini, das Übersetzungsdatum, Infos zum Webserver, Infos zum System uvm.
INFO_CREDITS 2 Infos über PHP Entwickler uvm. Siehe phpcredits().
INFO_CONFIGURATION 4 Lokaler und Master-Wert der PHP-Direktiven. Siehe ini_get().
INFO_MODULES 8 Infos über geladenene Module und deren Einstellungen. Siehe get_loaded_extensions().
INFO_ENVIRONMENT 16 Infos über Umgebungsvariablen. Siehe $_ENV.
INFO_VARIABLES 32 Zeigt vordefinierten Variablen (Environment, GET, POST, Cookie, Server).
INFO_LICENSE 64 Lizenz-Infos.
INFO_ALL -1 Zeigt alle Informationen.



Oder auch …

<?php 
phpinfo(); // Zeigt alle Informationen.
phpcredits(); // Zeigt PHP Entwicklerinfos.
php_logo_guid(); // Gibt GUID des PHP-Logos aus.
ini_get(); // Einzelne Konfigurationsoptionen der php.ini ausgeben.
ini_set(); // Kann zur Laufzeit eine Konfigurationseinstellung verändern.
get_loaded_extensions(); // Gibt ein Array mit den Namen aller einkompilierten und geladenen Extensions aus.
?>




Sind „expose_php“ Konfigurationseinstellung auf „off“ gesetzt, sind Teile der Informationen wie Credits und Zend Logos deaktiviert.





Beispiele:

Lizenz Informationen ausgeben.

<?php phpinfo(INFO_LICENSE); ?>


Ausgabe im Browser:




SMTP Konfiguration anzeigen.

<?php
echo "SMTP-SERVER: " . ini_get("SMTP") . "<br />";
echo "Port: " . ini_get("smtp_port");
?>


Ausgabe im Browser:




Skript prüft ob GD-Libraries installiert sind.

<?php
if(extension_loaded("gd"))
{
		echo "GD-Bibliothek aktiviert<br />";
		$gd = gd_info();
		echo "Version: " . $gd["GD Version"] . "<br />";
		echo "Grafikformate: ";
		if ($gd["JPG Support"]) echo "JPG";
		if ($gd["PNG Support"]) echo "PNG";
}
else
{
	echo "GD-Bibliothek nicht aktiviert!";
}
?>


Ausgabe im Browser:






<?php
    echo "Gräsergarten";   // Einzeiliger Kommentar
    
    /* Mehrzeiliger 
    Kommentar im
    php Dokument
    */
    echo "Obstgarten";
?>





echo


<?php
// Ausgabe via Echo Befehl/Anweisung
echo 'Ausgabe via Echo Befehl!<br />';
echo "Ausgabe via Echo Befehl (in doppelten Anführungszeichen)!<br />";
?>


Ausgabe im Browser:





<?php
// Ausgabe via Prozedur (Methode/Funktion)
echo ('Ausgabe via Echo Methode!<br />');
echo ("Ausgabe via Echo Methode (in doppelten Anführungszeichen)!<br />");
?>


Ausgabe im Browser:





<?php
// Ausgabeformatierung via Html (Schriftart Arial und Größe 6)
echo '<font size="6" face="Arial">Ausgabe via HTML Formatiert</font><br />';
echo "<font size='6' face='Arial'>Ausgabe via HTML Formatiert</font><br />";
?>



Diese Schreibweise gilt auch für print Befehl und für echo/print Methode



Ausgabe im Browser:





<?php
$anrede = 'Herr';
$vorname = 'Gnome';
$nachname = 'Linux';

echo 'Herzlich Willkommen, $anrede $vorname $nachname<br />';  // Hier werden nur die Variablennamen ausgegeben
echo "Herzlich Willkommen, $anrede $vorname $nachname<br />";
echo 'Herzlich Willkommen, '. $anrede . ' ' . $vorname . ' ' . $nachname .'<br />';
echo "<font size='6' face='Arial'>Herzlich Willkommen, $anrede $vorname $nachname</font><br />";
echo '<font size="6" face="Arial">Herzlich Willkommen, '. $anrede . ' ' . $vorname . ' ' . $nachname .'</font><br />';
?>


Ausgabe im Browser:





<?php
$preis = 100;
$mwst = 1.19;

echo 'Betrag inkl Mwst.: $preis * $mwst<br />';  // Hier werden die Variablennamen ausgegeben
echo "Betrag inkl. Mwst.: $preis * $mwst<br />";
echo "Betrag inkl. Mwst.: ($preis * $mwst)<br />";
echo 'Betrag inkl Mwst.: <font color="red">' .$preis * $mwst. '</font><br />';
echo "Betrag inkl Mwst.: <font color='red'>" .$preis * $mwst. "</font><br />";
?>


Ausgabe im Browser:





<?php
// Mit vorangestellten \ kann man ein nachfolgendes Zeichen entwerten
echo "Zitat: \"Wer nicht wagt der nicht Gewinnt!\".";
echo "Hier ein Backslash \.";
?>


Ausgabe im Browser:





print


<?php
// Ausgabe via Print Befehl
print 'Ausgabe via Print Befehl!<br />';
print "Ausgabe via Print Befehl (in doppelten Anführungszeichen)!<br />";
?>


Ausgabe im Browser:





<?php
// Ausgabe via Prozedur (Methode/Funktion)
print ('Ausgabe via Print Methode!<br />');
print ("Ausgabe via Print Methode (in doppelten Anführungszeichen)!<br />");
?>


Ausgabe im Browser:





Ausgabeblock


<?php
$anrede = 'Herr';
$vorname = 'Gnome';
$nachname = 'Linux';
$betrag = $preis * $mwst;

echo <<<Ausgabeabschnitt
Herzlich Willkommen,
$anrede
$vorname
$nachname
<br />
Betrag inkl. Mwst.: <font color="red">$ $betrag</font>
<br />
Ausgabeabschnitt;
?>


Ausgabe im Browser:





Variablen


In PHP findet keine Variablendeklaration statt. Variablen können sofort verwendet werden.

  • Werden mit einem $ (Skalar) eingeleitet (initialisiert).
  • Darf keine Leerzeichen enthalten.
  • Keine Umlaute erlaubt.
  • Keine Sonderzeichen ausser Unterstrich.
  • Darf nur aus Zahlen und Buchstaben bestehen, erstes Zeichen muss ein Buchstabe sein.
  • Case sensitive.
  • Keine von PHP reservierten Wörter.




Syntax:

  • $variablenbezeichner = Variablenwert;




Wird eine Variable in einfachen Hochkommata wird der Variablenamen, in doppelten Hochkommata der Wert ausgegeben.





Lokale und Globale Variablen


Den Unterschied zwischen Lokalen und Globalen Variablen lässt sich an folgenden Beispiel erkennen.

<?php
// Globale Variablen
$spruch = 'Be inspired!';
$spruch2 = 'Have fun!';

// Den Globalen Variablen Bereich auswerten bzw. analysieren kann
// man in PHP mit Hilfe der Methode var_dump(). Diese Methode entspricht
// von der Funktions- bzw. Arbeitsweise einer Analyse-Funktion.
var_dump($GLOBALS);
echo '<hr>';
echo $GLOBALS [spruch];
echo '<hr>';

function setzespruch()
{
	$spruch = 'Wer nicht wagt der nicht gewinnt!';
	echo $spruch;
	echo '<hr>';
	echo 'Spruch: ' . $GLOBALS [spruch];
	echo '<hr>';
	// Zugriff auf die Variablen via Schlüsselwort global
	global $spruch;
	echo 'Spruch aus dem globalen Bereich: '. $spruch;
}
setzespruch();
echo '<hr>';
echo 'Welcher Spruch erscheint? ' . $spruch;
?>


Ausgabe im Browser:





Datentypen


von PHP unterstützte Datentypen sind:

  • ganze Zahlen.
  • Zahlen mit Kommastellen.
  • Strings (Zeichenketten).
  • Arrays (Listen).
  • Objekte.





Zeichenketten



Strings (Zeichenketten) müssen in 'String' oder String eingeschlossen und können mit 'Obst' . 'Menge' miteinander verkettet werden.




<?php
...
$summe = "<p>Einkauf: " . $menge . " " . $artikel1;
$summe .= " Preis " . $zuzahlen . " " $artikel2 . "</p>";
...
?>






BEISPIELE FÜR DIE UMWANDLUNG VON ZEICHENKETTEN

Zeichenkette Wert Datentyp
352 352 ganze Zahl
352xz 352 ganze Zahl
xz352 0 Zeichenkette
35.2 35.2 Zahl mit Nachkommastellen
35.2xz 35.2 Zahl mit Nachkommastellen
xz35.2 0 Zeichenkette
-352 -352 ganze Zahl
35e2 3500 Zahl mit (möglichen) Nachkommastellen
35e-2 0.35 Zahl mit Nachkommastellen




Eine Zeichenkette wird interpretiert, wenn sie nur Ziffern oder Zahlen mit Nachkommastellen hat, oder wenn neben den Zahlen ., e oder E gesetzt wird.

Will man Zeichenkettenvariablen in Zahlen umwandeln, kann das mit den funktionen intval(); für ganze Zahlen und doubleval(); für Zahlen mit möglichen Nachkommastellen erreichen.


Beispiel:

<?php
$wert1 = "456";
$wert2 = "76.9";

$wert1 = intval($wert1);
$wert2 = doubleval($wert2); 
?>





Arrays (Listen)


Mit der Funktion array(), wird eine Variable zu einem Feld.

FIXME


Numerisch indizierte Arrays


Die Elemente werden automatisch nummeriert und beginnt bei Index [0].

FIXME



Assoziative Arrays



FIXME



Operatoren


Rangornung von Operatoren (von oben nach unten):

Operator Bedeutung
() Klammern
!- Logisches NICHT, negatives Vorzeichen
+ / % Multiplikation, Division, Modulo-Operation
+ - Addition, Subtraktion
< <= > >= kleiner, kleiner oder gleich, größer, größer oder gleich
== Gleich
!= Ungleich
&& Logisches UND
|| Logisches ODER
xor Exclusives Oder
= Zuweisung





Logische Operatoren


Logische Operatoren dienen zur Verknüpfung mehrerer Bedingungen, zum Vergleichen boolescher Werte (true, false) und geben einen boolschen Wert zurück.



Logisches Oder


Der Operator || ergibt True, wenn der Erste, der zweite oder beide Operanden wahr sind.


Ergibt der erste Operand True, wird der zweite Operand nicht mehr ausgewertet und das Ergebnis ist True, da der erste Operand das Ergebnis schon endgültig festlegt.




...
if($_POST['status'] == 10 || $_POST['status'] == 20)
...


Logisches ODER ||, wird benötigt falls nur eine der Bedingungen zutreffen soll.


Wahrheitstabelle für den logischen Operator ||:

Operand 1 Operand 2 Ergebnis ||
true false true
false true true
true true true
false false false





Logisches Und


Der Operator && ergibt nur dann True, wenn der Erste und der zweite Operator True ist.


Ergibt der erste Operand False, ist das Ergebnis ebenfalls False, der zweite Operand wird nicht mehr geprüft.




...
if($_POST['name'] == 'hans' && $_POST['pass'] == '1234')
...


Logisches UND && wird benötigt, falls alle Bedingungen zutreffen sollen.



Logisches Entweder-Oder


Der Operator xor ergibt dann True, wenn nur genau einer der beiden Operanden Wahr ist.


Sind beide Operanden True ist das Ergebnis False.




if (($_POST[zahl] == 10) xor ($_POST[zahl] == 20) xor ($_POST[zahl] == 30))
{
....;
}


Logisches Entweder-Oder xor wird benötigt falls nur eine der Bedingungen zutreffen soll.


Wahrheitstabelle für den logischen Operator xor:

Operand 1 Operand 2 Ergebnis xor
true false true
false true true
true true false
false false false





Logisches Nicht


Mit dem Logischen NICHT ! (unärer) Operator wird der Wahrheitswert von Bedingungen umgekehrt.

$wert = true;
$ergebnis =! $wert;
// $ergebnis ergibt false.


Den boolschen Wert eines Operanden umkehren.



Rechenoperatoren in PHP



+ Additon
- Subtraktion
* Multiplikation
/ Division
% Modulo (rest)





Beispiele:

<?php
...
$Oregano = 5;
$Tymian = 10;
$Rosmarin = 13; $Rosmarin += 2; // neuer Wert Rosmarin = 15
$Salbei = 22; $Salbei -= 2; // neuer Wert Salbei 20
...
?>



<?php
/**
 * Variablen fuer Zahlen Multiplikation
 */
echo "Multiplikation mit PHP<br />";
$menge = 66;
$preis = 3.33;
$summe = $menge * $preis;
// Ausgabe
echo $summe;

echo "<br />Multiplikation mit Exponentialzahlen<br />";
$menge = 66;
$preis = 0.333e1;
// oder $preis = 333e-2;
$summe = $menge * $preis;
// Ausgabe
echo $summe;

?>


Berechnung der Exponentialzahlen
0.333e1 ⇒ 0.333 * 101 = 0.333 * 10 = 3.33
333e-2 ⇒ 333 *10-2 = 333 * 0.01 = 3.33




Vergleichsoperatoren in PHP



OperatorBedeutung Gilt………
== gleich …für Zahlen und Zeichenketten
!= ungleich …für Zahlen und Zeichenketten
> größer als …nur für Zahlen
< kleiner als …nur für Zahlen
>= größer als oder gleich …nur für Zahlen
<= kleiner oder gleich …nur für Zahlen






Ob Anweisungen ausgeführt werden sollen, hängt von einer oder mehrerer Bedingungen ab. Bedingungen werden durch Wahrheitswerte von Vergleichsoperatoren gezeichnet. Siehe Tabelle „Vergleichsoperatoren in PHP“. Die Bedingung(en) steht oder stehen dabei in Klammern und können mit logischen Operatoren miteinander Verknüpft werden. Die Anweisungen werden dabei in geschweiften Klammern eingeschlossen (Anweisungsblock). Eine einzelne Anweisung benötigt nicht unbedingt geschweifte Klammern.



if / if-else / elseif



Beispiel einer einfachen if Anweisung:

<?php
/**
 * Einfache if Anweisung
 */
$anzahl = 49;

if ($anzahl < 50)
{
  echo 'Die Anzahl des Produkts untersteigt 50 St&uuml;ck!<br />';
  echo 'Bitte Produkt nachbestellen!';
}
?>





Beispiel einer einfachen if-else Anweisung:

<?php
/**
 * Einfache if-else Anweisung
 */
$anzahl = 67;

if ($anzahl < 50)
{
  echo "Die Anzahl des Produkts untersteigt 50 St&uuml;ck!<br />";
  echo "Bitte Produkt nachbestellen!";
}
else
{
  echo "Von Produkt sind noch $anzahl St&uuml;ck vorhanden.<br />";
  echo "Die Menge ist in Ordnung.";
}
?>





Vergleich von Zeichenketten:

<html>
<body>
<p>Bitte tragen Sie Benutzername und Passwort ein.</p>
<form action="pfad zur php datei" method="post">
<p>name: <input type="text" name="name" value="" id="name" />
&nbsp;passwort: <input type="password" name="pass" value="" id="pass" /></p>
<input type="submit" value="Senden" />
<input type="reset" value="Zur&uuml;cksetzen" />
</form>
</body>
</html>
<?php
/**
 * Auswertung der Anweisung
 */
if($_POST['name'] == 'Heidi' && $_POST['pass'] == 'admin')
{
	echo '<font size="14">Hallo Heidi.....</font><br />';
	echo '<a href="pfad">Logout</a>';
}
else
{
	echo '<font size="14" color="ff0000">Access Denied!</font><br />';
	echo '<a href="pfad">Zur&uuml;ck</a>';
}
?>





Anweisungen lassen sich in sich Verschachteln, dass mehrfache Verzweigungen möglich sind:

<?php
/**
 * Verschachtelte Anweisung
 */
$anzahl = 67;

if ($anzahl >= 100)
{
  echo "Von Produkt sind 100 oder mehr St&uuml;ck vorhanden.<br />";
  echo "Diese Menge ist in Ordnung!";
}
else
{
  if($anzahl >= 50)
  {
    echo "Von Produkt sind 50 oder mehr St&uuml;ck vorhanden.<br />";
    echo "Produkt langsam nachbestellen!";
  }
  else
  {
    echo "Von Produkt sind weniger als 50 St&uuml;ck vorhanden.<br />";
    echo "Produkt sofort nachbestellen!";
  }
}
?>





Elseif ist eine Mischung aus if und else. Ist der Operator der ersten if Anweisung falsch wird nicht else, sondern elseif zuerst ausgeführt.

<?php
/**
 * elseif
 */
$anzahl = 67;

if ($anzahl >= 100)
{
  echo "Von Produkt sind 100 oder mehr St&uuml;ck vorhanden.<br />";
  echo "Diese Menge ist in Ordnung!";
}
elseif($anzahl >= 50)
{
  echo "Von Produkt sind 50 oder mehr St&uuml;ck vorhanden.<br />";
  echo "Produkt langsam nachbestellen!";
}
else
{
  echo "Von Produkt sind weniger als 50 St&uuml;ck vorhanden.<br />";
  echo "Produkt sofort nachbestellen!";
}
?>





switch()


Switch-case bietet eine Alternative Schreibweise zu if-else, wenn eine Variable auf mehrere feste Werte geprüft werden soll. Eine switch Anweisung wird von oben nach unten durchlaufen und wenn ein case (Fall) zutrifft, wird der vorgesehene Code ausgeführt. Der Befehl break stoppt den Durchlauf, falls ein case zutrifft. Die Anweisungen nach dem break werden dann nicht mehr ausgeführt. Ohne break würden alle case's ausgeführt werden. Trifft kein case zu, wird der default case ausgeführt.


Beispiele:

<?php
switch($name)
{
case 'Thomas':
  echo 'Hallo Thomas';
  break;
  
case 'Christoph':
  echo 'Hallo Christoph';
  break;
  
case 'Inka':
  echo 'Hallo Inka';
  break;
  
default:
  echo 'Unbekannter User';
  break;
}
?>





Beispiel: Dateiarchivauswahl mit switch-case. Hier befinden sich die Dateien im Verzeichnis „archiv/“, die Icons im Verzeichnis „icon/.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<title>Archivauswahlformular</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="description" content="" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="" />
</head>
<body>
<form name="formular" action="archivausgabe.php" method="post">
<table align="center" cellspacing="5" cellpadding="5" width="600" border="0">
<tr>
  <td><strong>Archiv (Auswahl)</strong></td>
  <td>&nbsp;</td>
</tr>
<tr>
  <td align="right">Archiv:</td>
  <td><input type="radio" name="archivauswahl" value="archiv/*.pdf" />PDF-Dokumente<br />
      <input type="radio" name="archivauswahl" value="archiv/*.txt" />TXT-Dokumente<br />
      <input type="radio" name="archivauswahl" value="archiv/*.png" />PNG-Dokumente<br />
      <input type="radio" name="archivauswahl" value="archiv/*.*" />Alle-Dokumente<br />
  </td>
</tr>
<tr>
  <td>&nbsp;</td>
  <td><input name="schalter" type="submit" value="Aufrufen" /></td>
</tr>
</table>
</form>
</body>
</html>




Die Datei archivausgabe.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="author" content="" />
<meta name="description" content="" />
<meta name="keywords" content="" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Archivausgabe</title>
<script language="javascript" type="text/javascript">
function browserfenster(pfad,titel,eigenschaften)
{
  window.open(pfad,'Fenster','left=0,top=0,width=500,height=500');
}
</script>
<style type="text/css" media="screen">
.dateistil {
    font-family: Arial;
    width: 500px;
}
.dateistil a {
    display: block;
    border: 1px solid #000000;
    margin: 5px;
    padding: 5px; 
    color: #0000FF;
    text-decoration: none;
    background-color: #dddddd;
}
.dateistil a:hover {
    background-color: #FFAA00;
}
</style>
</head>
<body>
<!-- PHP (Anfang) -->
<?php
function dokumentausgeben($verzeichnis)
{
  // Variable für Archiv
  $archivdateien = glob($verzeichnis);
  $dateityp = 'icon/Open.Folder.png';

  // Ausgabe der Dateien des Archivs ($archivdateien)
  for ($i = 0; $i < count($archivdateien); $i++)
  {
     // Fallunterscheidung    
     preg_match("/\w*$/i", $archivdateien[$i], $endung);
     $dateisuffix = $endung[0];    

     switch($dateisuffix)
     {
       case 'pdf':
         $dateityp = 'icon/PDF.File.png';
         break;
       case 'txt':
         $dateityp = 'icon/TXT.File.png';
         break;
       case 'png':
         $dateityp = 'icon/PNG.File.png';
         break;
       default:
         $dateityp = 'icon/BIN.File.png';
         break;
    }    

    // Ausgabe Dateiname
    if (preg_match("/\w*\.\w*$/i", $archivdateien[$i], $dateibezeichner))
    {
       $dateiname = $dateibezeichner[0];
    }

echo <<<Dateiausgabe
<div class="dateistil">
<a href="#" onclick="browserfenster('$archivdateien[$i]')"><img src="$dateityp" border="0" align="absmiddle"/>$dateiname</a>
</div>		
Dateiausgabe;
  }// for
}// function

// Funktionsaufruf
dokumentausgeben($_POST[archivauswahl]);
?>
<!-- PHP (Ende) -->
</body>
</html>


Ausgabe im Browser:






Hier wird in einem HTML Dokument mit dem „form“ Kontainer und dem Attribut „action“ auf den PHP Interpreter verwiesen. Ein Formular kann mit der Methode GET oder POST versendet werden. POST ist die Sichere und bessere Methode.

<html><body>
<form id="formular" name="formular" method="post" action="senden.php">
  <h1>HTML Eingabeformular</h1>
  <p><input type="text" name="vorname" id="vorname" /> Vorname</p>
  <p><input type="text" name="nachname" id="nachname" /> Nachname</p>
  <p><input type="submit" name="senden" id="senden" value="Senden" />
     <input name="reset" type="reset" id="reset" value="Zur&uuml;cksetzen" /></p>
</form>
</body></html>





Der PHP Interpreter beinhaltet die vordefinierte Variable $_POST. Wird im HTML Dokument die Methode GET angewandt, kommt die Variable $_GET zum Einsatz.

<?php
/**
 * PHP Auswertungsprogramm
 */
echo "Ihr Name,<br />";
echo "<p>" . $_POST["vorname"] . " " . $_POST["nachname"];
?>



FIXME



Cloud