Beispiel: Apfel-Datenbank

Dieses Beispiel soll einige wichtige Tätigkeiten im Zusammenhang mit PHP und MySQL demonstrieren.

(1) Startdatei

appleshop.html
<html>
<head>
<title>Apfelbeispiel</title>
</head>
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">
<h1>Webinterface für Online-Apfelshop</h1>
<hr>
 
<ul>
  <li><a href="apfeldb_bestellformular.html">Bestellformular</a></li>
  <li><a href="apfeldb_anzeige.php">Bestellungen anzeigen</a></li>
  <li><a href="apfeldb_aendern.php">Bestellungen ändern</a></li>
</ul>
 
Bitte wählen Sie!
</body>
</html>

(2) Bestellformular

apfeldb_bestellformular.html
<html>
<body>
Bitte geben Sie folgende Daten für Ihre Bestellung ein:
<form action = "apfeldb_schreiben.php" method = "post">
  <p><input size="20" name="name"> Vorname und Nachname</p>
  <p><input size="20" name="strasse"> Strasse</p>
  <p><input size="20" name="ort"> PLZ und Ort</p>
Apfelsorte:<br>
  <input type="radio" name="sorte" value="Jonagold">Jonagold
  <input type="radio" name="sorte" value="Gala">Gala
  <input type="radio" name="sorte" value="Elstar">Elstar
 
  <p><input size="10" name="menge"> kg (Menge)</p>
  <input type="submit" name="Senden" value="Absenden">
  <input type="reset">
</form>
</body>
</html>

(3) In die Datenbank schreiben

apfeldb_schreiben.php
<?php
//apfeldb_schreiben.php
//Mysql-Verbindung aufbauen:
   error_reporting(E_ALL);
   include("connect.inc.php");
   $tblname = "bestellung";
   echo ' - Schreiben in <font color="#FF0000">'.$dbname."->".$tblname."</font>";
   echo "<hr>";
 
// --------------------------
  if ($_POST["Senden"])
  {echo "Schreibe neuen Eintrag...<br />";
   $name    = $_POST["name"];
   $strasse = $_POST["strasse"];
   $ort     = $_POST["ort"];
   $sorte   = $_POST["sorte"];
   $menge   = $_POST["menge"];
   $eintrag = "INSERT INTO bestellung (Name,Strasse,Ort,Sorte,Menge) VALUES('$name','$strasse','$ort','$sorte','$menge')";
   $sql = mysql_query($eintrag) or die("SQL-Fehler: ".mysql_error());
   if ($sql)
   {echo "Eintrag in der Datenbank wurde erfolgreich vorgenommen!<br>";
    echo "<p>Folgende Angaben wurden gespeichert</p>";
    echo "$name<br>";
    echo "$strasse<br>";
    echo "$ort<br>";
    echo "$menge kg $sorte<br>";
   }
  }
// --------------------------
 
//Schließen der Datenbank;
   mysql_close($db);
   echo "<br> Verbindung beendet!";
 
// Weiteres Menü
   echo "<hr>";
   echo '<a href="appleshop.html">Verwaltungskonsole</a><br>';
?>

(4) Datenbank anzeigen

apfeldb_anzeige.php
<?php
//apfeldb_anzeige.php
//Mysql-Verbindung aufbauen:
   error_reporting(E_ALL);
   include("connect.inc.php");
 
   $tblname  = "bestellung";
   $abfrage  = "select * from bestellung;";
   $result   = mysql_query($abfrage);
   if($result)
   {echo ' - Ausgabe von <font color="#FF0000">'.$dbname."->".$tblname."</font>";
    $dszahl=mysql_num_rows($result);
    echo "&nbsp;&nbsp;&nbsp;Der Abfrage entsprechen $dszahl Datensätze!<hr>";
   }
   else
    echo "<br>Die SQL-Anweisung schlug fehl! <br>Fehler: " .mysql_error();
 
 
// Ausgabe mittel mysql_result()
 
echo "<table>";
 
for ($i=0;$i<$dszahl;$i++)
{$name    = mysql_result($result,$i,"Name");
 // $name = mysql_result($result,$i,0); // i.Datensatz - 1.Datenfeld
 $strasse = mysql_result($result,$i,"Strasse");
 $ort     = mysql_result($result,$i,"Ort");
 $sorte   = mysql_result($result,$i,"Sorte");
 $menge   = mysql_result($result,$i,"Menge");
 
 if ($i%2==0)
  echo '<tr bgcolor="lightgrey">';
 else
  echo '<tr bgcolor="white">';
 
 echo "<td>$name</td><td>$strasse</td><td>$ort</td><td>$sorte</td><td>$menge</td>";
 echo '</tr>';
 
}
 
echo "</table>";
 
 
//Schließen der Datenbank;
   mysql_close($db);
   echo "<br> Verbindung beendet!";
 
// Weiteres Menü
   echo "<hr>";
   echo '<a href="appleshop.html">Verwaltungskonsole</a><br>';
?>

(5) Datenbank editieren

apfeldb_aendern.php
<?php
// apfeldb_anzeigen
 
// MySQL-Verbindung aufbauen
   //error_reporting(E_ALL);
   require("connect.inc.php");
   $tblname="bestellung";
   echo "-Ändern von <font color='#ff0000'>$tblname</font> möglich";
   echo "<hr>";
 
 
   // Daten speichern
   if($_POST["speichern"]=="Speichern"){
      $ID = $_POST['ID'];
      $name = $_POST['Name'];
      $strasse = $_POST['Strasse'];
      $ort = $_POST['Ort'];
      $sorte = $_POST['Sorte'];
      $menge = $_POST['Menge'];
      $abfrage = "UPDATE appleman.bestellung SET Name = '$name',Strasse = $strasse',Ort '$ort',Sorte = '$sorte',Menge = '$menge' WHERE bestellung.Name = '$ID'";
      $sql     = mysql_query($abfrage) or die("SQL-Fehler: ".mysql_error());
      echo "Änderung erfolgreich übernommen <br><br>";
   }
 
 
   // Daten aus Datenbank holen
   $abfrage = "SELECT * FROM $tblname";
   $sql     = mysql_query($abfrage) or die("SQL-Fehler: ".mysql_error());
   $dsz     = mysql_num_rows($sql);
 
   // Ausgabe der Daten
   echo "<table border='#000000'>";
   echo "<tr align='center' bgcolor='#C0C0C0'><td ><b>Name</b></td><td ><b>Strasse</b></td><td ><b>Ort</b></td><td ><b>Sorte</b></td><td ><b>Menge</b></td></tr>";
   for($i=0;$i<$dsz;$i++){
   $name = mysql_result($sql,$i,"Name");
   $strasse = mysql_result($sql,$i,"Strasse");
   $ort = mysql_result($sql,$i,"Ort");
   $sorte = mysql_result($sql,$i,"Sorte");
   $menge = mysql_result($sql,$i,"Menge");
 
   if($i%2==1){echo "<tr bgcolor='#C0C0C0'>";}
   else{echo "<tr>";}
   echo "<td >$name</td>";
   echo "<td>$strasse</td>";
   echo "<td>$ort</td>";
   echo "<td>$sorte</td>";
   echo "<td>$menge</td>";
   echo "</tr>";
   }
 
   echo "</table>";
 
// Ändern ermöglichen
   if($_POST["Aendern"]=="Ändern"){
   ?>
     <form action="apfeldb_aendern.php" method="POST">
     <?php
      $id=$_POST['ID'];
      $abfrage = "SELECT * FROM $tblname WHERE Name LIKE '$id'";
      $sql     = mysql_query($abfrage) or die("SQL-Fehler: ".mysql_error());
      $name = mysql_result($sql,0,"Name");
      $strasse = mysql_result($sql,0,"Strasse");
      $ort = mysql_result($sql,0,"Ort");
      $sorte = mysql_result($sql,0,"Sorte");
      $menge = mysql_result($sql,0,"Menge");
       ?>
      <input type='Text' name='Name' value='<?php echo $name; ?>'>
      <input type='Text' name='Strasse' value='<?php echo $strasse; ?>'>
      <input type='Text' name='Ort' value='<?php echo $ort; ?>'>
      <input type='Text' name='Sorte' value='<?php echo $sorte; ?>'>
      <input type='Text' name='Menge' value='<?php echo $menge; ?>'>
      <input type="hidden" name="ID" value="<?php echo $id; ?>" >
      <input type="Submit" name="speichern" value="Speichern">
    </form>
 
   <?php
   }
 
   else{
   ?>
 
 
   <br>
   <b>Daten eines Kunden ändern:</b>
   <hr>
   Geben Sie den Namen des Kunden ein um seine/ihre Daten zu ändern:<br>
 
   <form action="apfeldb_aendern.php" method="POST">
   <pre>
   Name: <input type="Text" name="ID"> <input type="Submit" name="Aendern" value="Ändern">
   </pre>
   </form>
 
 
   <?php
   }
 
 
// MySQL-Verbindung schließen
   mysql_close($db);
   echo "<br>Verbindung beendet!";
   echo "<br><br><a href='appleshop.html'>Zurück</a>";
 
?>

(6) Löschen in Datenbank

apfeldb_loeschen.php
<?php
// apfeldb_anzeigen
 
// MySQL-Verbindung aufbauen
   //error_reporting(E_ALL);
   require("connect.inc.php");
   $tblname="bestellung";
   echo "-Löschen von <font color='#ff0000'>$tblname</font> möglich";
   echo "<hr>";
 
 
 
   if($_POST["Loeschen"]=="Löschen"){
     $ID=$_POST["ID"];
     $abfrage = "DELETE FROM appleman.bestellung WHERE bestellung.Name = '$ID'";
     $sql     = mysql_query($abfrage) or die("SQL-Fehler: ".mysql_error());
   }
   else{
   ?>
 
 
   <br>
   <b>Daten eines Kunden löschen:</b>
 
   Geben Sie den Namen des Kunden ein um seine/ihre Daten zu löschen:<br>
 
   <form action="apfeldb_loeschen.php" method="POST">
   <pre>
   Name: <input type="Text" name="ID"> <input type="Submit" name="Loeschen" value="Löschen">
   </pre>
   </form>
   <hr>
 
 
   <?php
   }
 
   // Daten aus Datenbank holen
   $abfrage = "SELECT * FROM $tblname";
   $sql     = mysql_query($abfrage) or die("SQL-Fehler: ".mysql_error());
 
 
// Ausgabe der Daten
   $dsz = mysql_num_rows($sql);
   echo "<br><table border='#000000'>";
   echo "<tr align='center' bgcolor='#C0C0C0'><td ><b>Name</b></td><td ><b>Straße</b></td><td ><b>Ort</b></td><td ><b>Sorte</b></td><td ><b>Menge</b></td></tr>";
   for($i=0;$i<$dsz;$i++){
   $name = mysql_result($sql,$i,"Name");
   $strasse = mysql_result($sql,$i,"Straße");
   $ort = mysql_result($sql,$i,"Ort");
   $sorte = mysql_result($sql,$i,"Sorte");
   $menge = mysql_result($sql,$i,"Menge");
 
   if($i%2==1){echo "<tr bgcolor='#C0C0C0'>";}
   else{echo "<tr>";}
   echo "<td >$name</td>";
   echo "<td>$strasse</td>";
   echo "<td>$ort</td>";
   echo "<td>$sorte</td>";
   echo "<td>$menge</td>";
   echo "</tr>";
   }
   echo "</table>";
 
// MySQL-Verbindung schließen
   mysql_close($db);
   echo "<br>Verbindung beendet!";
   echo "<br><br><a href='appleshop.html'>Zurück</a>";
?>

(7) Datenbank sortieren

apfeldb_sortieren.php
<?php
 
// MySQL-Verbindung aufbauen
   //error_reporting(E_ALL);
   require("connect.inc.php");
   $tblname="bestellung";
   echo "-Sortieren von <font color='#ff0000'>$tblname</font> möglich";
   echo "<hr>";
 
// Daten aus Datenbank holen
   $abfrage = "SELECT * FROM $tblname";
   $sql     = mysql_query($abfrage) or die("SQL-Fehler: ".mysql_error());
   $dsz = mysql_num_rows($sql);
 
// Ausgabe der Daten
   if($_POST["Sortieren"]=="Sortieren"){
   $wahl = $_POST["wahl"];
   $abfrage = "SELECT * FROM $tblname ORDER BY $wahl";
   $sql     = mysql_query($abfrage) or die("SQL-Fehler: ".mysql_error());
 
 
   }
 
 
   ?>
 
   <form action="apfeldb_sortieren.php" method="POST">
   <?php
   echo "<table border='#000000'>";
 
   echo "<tr align='center'><td><input type='Radio' name='wahl' value='Name'></td><td><input type='Radio' name='wahl' value='Straße'></td><td><input type='Radio' name='wahl' value='Ort'></td><td><input type='Radio' name='wahl' value='Sorte'></td><td><input type='Radio' name='wahl' value='Menge'></td></tr>";
   echo "<tr align='center' bgcolor='#C0C0C0'><td ><b>Name</b></td><td ><b>Straße</b></td><td ><b>Ort</b></td><td ><b>Sorte</b></td><td ><b>Menge</b></td></tr>";
   for($i=0;$i<$dsz;$i++){
   $name = mysql_result($sql,$i,"Name");
   $strasse = mysql_result($sql,$i,"Straße");
   $ort = mysql_result($sql,$i,"Ort");
   $sorte = mysql_result($sql,$i,"Sorte");
   $menge = mysql_result($sql,$i,"Menge");
 
   if($i%2==1){echo "<tr bgcolor='#C0C0C0'>";}
   else{echo "<tr>";}
   echo "<td >$name</td>";
   echo "<td>$strasse</td>";
   echo "<td>$ort</td>";
   echo "<td>$sorte</td>";
   echo "<td>$menge</td>";
   echo "</tr>";
   }
   echo "</table>";
   ?>
   <br>
   <input type="Submit" name="Sortieren" value="Sortieren">
   </form>
   <?php
 
 
// MySQL-Verbindung schließen
   mysql_close($db);
   echo "<br>Verbindung beendet!";
   echo "<br><br><a href='appleshop.html'>Zurück</a>";
?>