<html>
<head>
 <title>PHP Beispiel 2: Formularauswertung und Abspeichern</title>
</head>

<body>
<a href="s2.phps">Quellcode</a>
<h1><a href="index.html">PHP</a> Beispiel 2: Formularauswertung und Abspeichern</h1>

<?php 
   
# Wir verwenden "Superglobal" $_REQUEST[] zum Zugriff auf Formulareingaben
    
    
$name $_REQUEST['name'];
    
$age  $_REQUEST['age'];
    
$html_name htmlspecialchars($name);
    
$html_age  htmlspecialchars($age);

    if (
$name && $age 0) {
        
# Beides ausgefuellt.
        
echo "Hallo <strong>$html_name</strong>, bist Du wirklich $html_age Jahre alt?<p>";

        if (
$age 20) {
            echo 
"Du bist wirklich jung ... !<p>";
        } else if (
$age 30) {
            echo 
"Du bist jung, aber noch nicht reif :-)";
        } else {
            echo 
"Du bist jung und reif :-).";
        }
        
# Abspeichern in eine Datei:
#        $source_log = basename($REQUEST_URI);
        
$logger "tmp/s2.log";
        
$fp fopen$logger"a");
        
# fuer Webserver muss Zugriff auf die Datei gegeben sein !
        
$string date('d. F Y H:i') . " - " $name ", $age Jahre alt.\n";
        
        if (!(
$ok fwrite($fp$stringstrlen($string))))
            echo 
"Fehler beim Schreiben der Logdatei.\n";
        
fclose($fp);
        echo 
"<P>Die eingegebenen Daten werden nun in eine 
        <a href=\"$logger\">Logdatei</a> geschrieben."
;
        exit;
    }

    if (isset(
$_REQUEST['ausgefuellt'])) {
        
# irgendwas nicht ausgefuellt ?
        
if (! isset($_REQUEST['name']) || $_REQUEST['name'] == '')
            
$name_error 'Bitte Namen ausfüllen!';
        if (! isset(
$_REQUEST['age']) || $_REQUEST['age'] <= 0)
            
$age_error  'Bitte Alter angeben!';
    }
?>

<form action="s2.php" method="post">
 <input type="hidden" name="ausgefuellt" value="1">

Name: <input type="text" name="name" value="<?php echo $name ?>"> 
       <?php echo $name_error?><BR>
Alter: <input type="text" name="age" value="<?php echo $age ?>">
      <?php echo $age_error?><br>
<input type="submit" value="Absenden"><br>
</form>
</body>
</html>