MySQL-Datenbank

Die HTML-Anweisungen der Beispiele wurden mit einem Leerzeichen ungültig gemacht, damit sie nicht ausgeführt werden. Für korrekte HTML-Anweisungen ersetze die Zeichenfolge '< ' durch '<'.

Zugriff auf SQL-Datenbank

< html>
< body>
< ?php
   $db = mysql_connect();

   $res = mysql_db_query("firma",
          "select * from personen");
   $num = mysql_num_rows($res);
   echo "$num Datensätze gefunden< br>";

   for ($i=0; $i<$num; $i++)
   {
      $nn = mysql_result($res, $i, "name");
      $vn = mysql_result($res, $i, "vorname");
      $pn = mysql_result($res, $i, "personalnummer");
      $ge = mysql_result($res, $i, "gehalt");
      $gt = mysql_result($res, $i, "geburtstag");
      echo "$nn, $vn, $pn, $ge, $gt < br>";
   }

   mysql_close($db);
?>
< /body>
< /html>

Datensätze mit SQL auswählen

< html>
< body>
< ?php
   $db = mysql_connect();

   $sqlab  = "select name, gehalt from personen";
   $sqlab .= " where gehalt >= 3000";
   $sqlab .= " and gehalt <= 3700";
   $sqlab .= " order by gehalt desc";

   $res = mysql_db_query("firma", $sqlab);
   $num = mysql_num_rows($res);
   echo "$num Datensätze gefunden
"; for ($i=0; $i<$num; $i++) { $nn = mysql_result($res, $i, "name"); $ge = mysql_result($res, $i, "gehalt"); echo "$nn, $ge < br>"; } mysql_close($db); ?> < /body> < /html>

Ähnlichkeitsabfrage mit SQL

< html>
< body>
< ?php
   $db = mysql_connect();

   $sqlab  = "select name, vorname from personen";
   $sqlab .= " where name like 'M%' order by name";

   $res = mysql_db_query("firma", $sqlab);
   $num = mysql_num_rows($res);
   echo "$num Datensätze gefunden< br>";

   for ($i=0; $i<$num; $i++)
   {
      $nn = mysql_result($res, $i, "name");
      $vn = mysql_result($res, $i, "vorname");
      echo "$nn, $vn < br>";
   }

   mysql_close($db);
?>
< /body>
< /html>

SQL-Ausgabe in eine HTML-Tabelle

< html>
< body>
< ?php
   $db = mysql_connect();
   $res = mysql_db_query("firma", "select * from personen");
   $num = mysql_num_rows($res);

   // Tabellenbeginn
   echo "< table border>";

   // Überschrift
   echo "< tr> < td>Lfd.Nr.< /td> < td>Name< /td>";
   echo "< td>Vorname< /td> < td>Personalnummer< /td>";
   echo "< td>Gehalt< /td> < td>Geburtstag < /tr>";

   for ($i=0; $i<$num; $i++)
   {
      $nn = mysql_result($res, $i, "name");
      $vn = mysql_result($res, $i, "vorname");
      $pn = mysql_result($res, $i, "personalnummer");
      $ge = mysql_result($res, $i, "gehalt");
      $gt = mysql_result($res, $i, "geburtstag");
      $lf = $i + 1;

      // Tabellenzeile mit -zellen
      echo "< tr> < td>$lf< /td> < td>$nn< /td> < td>$vn< /td>";
      echo "< td>$pn< /td> < td>$ge< /td> < td>$gt< /td> < /tr>";
   }

   // Tabellenende
   echo "< /table>";

   mysql_close($db);
?>
< /body>
< /html>

SQL-Auswahl über ein Suchformular

< html>
< body>
Anzeige der Personen mit einem Gehalt zwischen:
< form action = "uf08.php" method = "post">
    < input name = "ug"> Untergrenze< p>
    und < p>
    < input name = "og"> Obergrenze< p>
    < input type = "submit">
    < input type = "reset">
< /form>
< /body>
< /html>

< html>
< body>
< ?php
   $db = mysql_connect();

   $sqlab = "select name, gehalt from personen";
   $sqlab .= " where gehalt >= $ug";
   $sqlab .= " and gehalt <= $og";

   $res = mysql_db_query("firma", $sqlab);
   $num = mysql_num_rows($res);

   if ($num==0)
      echo "keine passenden Datensätze gefunden";

   for ($i=0; $i<$num; $i++)
   {
      $nn = mysql_result($res, $i, "name");
      $ge = mysql_result($res, $i, "gehalt");
      echo "$nn, $ge
"; } mysql_close($db); ?> < /body> < /html>

Suche nach Zeichenketten

uf09.htm
< html>
< body>
Anzeige der Personen mit folgenden Anfangsbuchstaben:
< form action = "uf09.php" method = "post">
    < input name = "anf"> 

< input type = "submit"> < input type = "reset"> < /form> uf09.php: < html> < body> < ?php $db = mysql_connect(); $sqlab = "select name, vorname from personen"; $sqlab .= " where name like '$anf%' "; $res = mysql_db_query("firma", $sqlab); $num = mysql_num_rows($res); if ($num==0) echo "keine passenden Datensätze gefunden"; for ($i=0; $i<$num; $i++) { $nn = mysql_result($res, $i, "name"); $vn = mysql_result($res, $i, "vorname"); echo "$nn, $vn< br>"; } mysql_close($db); ?> < /body> < /html>

Formular-Elemente

:
< html>
< body>
Anzeige der Personen aus der ausgewählten Gehaltsgruppe:
< form action = "uf10.php" method = "post">

    < input type="radio" name="geh" value="1" checked>
       bis DM 3000 einschl. < p>
    < input type="radio" name="geh" value="2">
       ab DM 3000 bis DM 3500 einschl. < p>
    < input type="radio" name="geh" value="3">
       ab DM 3500 bis DM 5000 einschl. < p>
    < input type="radio" name="geh" value="4">
       ab DM 5000 < p>

    < input type="submit">
    < input type="reset">
< /form>
< /body>
< /html>

uf10.php:
< html>
< body>
< ?php
   $db = mysql_connect();
   $sqlab = "select name, gehalt";
   $sqlab .= " from personen where";

   if ($geh==1)
      $sqlab .= " gehalt <= 3000";
   else if ($geh==2)
      $sqlab .= " gehalt > 3000 and gehalt <= 3500";
   else if ($geh==3)
      $sqlab .= " gehalt > 3500 and gehalt <= 5000";
   else
      $sqlab .= " gehalt > 5000";

   $res = mysql_db_query("firma", $sqlab);
   $num = mysql_num_rows($res);
   if ($num==0)
      echo "keine passenden Datensätze gefunden";

   for ($i=0; $i<$num; $i++)
   {
      $nn = mysql_result($res, $i, "name");
      $ge = mysql_result($res, $i, "gehalt");
      echo "$nn, $ge< br>";
   }

   mysql_close($db);
?>
< /body>
< /html>

Datensätze erzeugen

< html>
< head>
< ?php
   if ($gesendet)
   {
      $db = mysql_connect();

      $sqlab = "insert personen";
      $sqlab .= "(name, vorname, personalnummer,";
      $sqlab .= " gehalt, geburtstag) values ";
      $sqlab .= "('$na', '$vn', $pn, $ge, '$gt')";

      mysql_db_query("firma", $sqlab);

      $num = mysql_affected_rows();
      if ($num>0)
         echo "Es wurde 1 Datensatz hinzugefügt< p>";
      else
      {
         echo "Es ist ein Fehler aufgetreten, ";
         echo "es wurde kein Datensatz hinzugefügt< p>";
      }
      mysql_close($db);
   }
?>
< /head>

< body>
Geben Sie einen vollständigen Datensatz ein und senden Sie das
Formular ab:
< form action = "uf13.php" method = "post">
    < input name="na"> Name< p>
    < input name="vn"> Vorname< p>
    < input name="pn"> Personalnummer (eine ganze Zahl)< p>
    < input name="ge"> Gehalt (Nachkommastellen mit Punkt)< p>
    < input name="gt">
                 Geburtsdatum (in der Form JJJJ-MM-TT)< p>
    < input type="submit" name="gesendet">
    < input type="reset">
< /form>

Alle Datensätze anzeigen
< /body>
< /html>

Mehrere Dätensätze ändern

< html>
< body>
Alle Gehälter um 5% < a href = "uf15.php">erhöhen< /a>< p>
Alle Datensätze < a href = "uf07.php">anzeigen< /a>
< /body>
< /html

uf15.php:
< html>
< body>
< ?php

   $db = mysql_connect();
   $sqlab = "update personen set gehalt = gehalt * 1.05";
   mysql_db_query("firma", $sqlab);

   $num = mysql_affected_rows();
   echo "Es wurden $num Datensätze geändert< p>";

   mysql_close($db);

?>
Alle Datensätze < a href="uf07.php">anzeigen< /a>
< /body>
< /html>

Einen bestimmten Datensatz ändern

< pre> < html> < body> Wählen Sie aus, welcher Datensatz geändert werden soll:< p> < form action = "uf16b.php" method = "post"> < ?php $db = mysql_connect(); $res = mysql_db_query("firma", "select * from personen"); $num = mysql_num_rows($res); // Tabellenbeginn echo "< table border>"; // Überschrift echo "< tr> < td>Auswahl< /td> < td>Name< /td>"; echo "< td>Vorname< /td> < td>Personalnummer< /td>"; echo "< td>Gehalt< /td> < td>Geburtstag< /td> < /tr>"; for ($i=0; $i<$num; $i++) { $nn = mysql_result($res, $i, "name"); $vn = mysql_result($res, $i, "vorname"); $pn = mysql_result($res, $i, "personalnummer"); $ge = mysql_result($res, $i, "gehalt"); $gt = mysql_result($res, $i, "geburtstag"); // Tabellenzeile mit -zellen echo "< tr> < td>< input type='radio' name='auswahl'"; echo " value='$pn'>< /td> < td>$nn< /td> < td>$vn"; echo "< td>$pn< /td> < td>$ge< /td> < td>$gt< /td> < /tr>"; } // Tabellenende echo "< /table>"; mysql_close($db); ?> < p> < input type="submit" value="Datensatz anzeigen"> < /form> < /body> < /html> uf16b.php: < html> < body> < ?php if ($auswahl) { $db = mysql_connect(); $sqlab = "select * from personen where"; $sqlab .= " personalnummer = $auswahl"; $res = mysql_db_query("firma", $sqlab); $altnn = mysql_result($res, 0, "name"); $altvn = mysql_result($res, 0, "vorname"); $altge = mysql_result($res, 0, "gehalt"); $altgt = mysql_result($res, 0, "geburtstag"); echo "Führen Sie die Änderungen durch,< p>"; echo "betätigen Sie anschließend den Button< p>"; echo "< form action = 'uf16c.php' "; echo " method = 'post'>"; echo "< input name='neunn' value='$altnn'>"; echo " Nachname

"; echo "< input name='neuvn' value='$altvn'> "; echo " Vorname

"; echo "< input name='neupn' value='$auswahl'>"; echo " Personalnummer

"; echo "< input name='neuge' value='$altge'>"; echo " Gehalt

"; echo "< input name='neugt' value='$altgt'>"; echo " Geburtstag

"; echo "< input type='hidden' name='oripn' "; echo " value='$auswahl'>"; echo "< input type='submit' "; echo " value='Änderungen in DB speichern'>< p>"; echo "< input type='reset'>"; echo "< /form>"; mysql_close($db); } else echo "Es wurde kein Datensatz ausgewählt< p>"; ?> < /body> < /html> uf16c.php: < html> < body> < ?php $db = mysql_connect(); $sqlab = "update personen set name = '$neunn',"; $sqlab .= "vorname = '$neuvn',"; $sqlab .= "personalnummer = '$neupn',"; $sqlab .= "gehalt = '$neuge',"; $sqlab .= "geburtstag = '$neugt'"; $sqlab .= "where personalnummer = $oripn"; mysql_db_query("firma", $sqlab); $num = mysql_affected_rows(); if ($num>0) echo "Der Datensatz wurde geändert< p>"; else echo "Der Datensatz wurde nicht geändert< p>"; mysql_close($db); ?> Zurück zur < a href="uf16a.php">Auswahl< /a> < /body> < /html>

Datensätze löschen

uf17a.html: ?????

if17b.php:
< html>
< body>
< ?php
if ($auswahl)
{
   $db = mysql_connect();
   $sqlab = "delete from personen where";
   $sqlab .= " personalnummer = '$auswahl'";

   mysql_db_query("firma", $sqlab);

   $num = mysql_affected_rows();
   if ($num>0)
      echo "Der Datensatz wurde gelöscht< p>";
   else
      echo "Der Datensatz wurde nicht gelöscht< p>";

   mysql_close($db);
}
else
   echo "Es wurde kein Datensatz ausgewählt< p>";

?>
Zurück zur < a href="uf17a.php">Auswahl< /a>

< /body>
< /html>