Abfrage der Zugangsdaten aus Datenbank

Als erstes benötigen wir eine neue Tabelle – der Namen ist „zugangsdaten“ mit 4 Feldern

  • id
  • nutzerid
  • kennwort
  • rechte

Wir tragen nun von Hand 3 Zugänge in die Datenbank ein. Ein Verwaltungsprogramm kann man ja bei Gelegenheit durch das Wissen der letzten Kapitel selber sich erstellen. Jetzt ist das Prinzip erst einmal wichtig.

Bei den Kennwörtern schreiben wir das H in geheim groß (gut zum testen)

 INSERT INTO `adressbuch`.`zugangsdaten` (`id`, `nutzerid`, `kennwort`, `rechte`)  VALUES (NULL, 'Chef', 'geHeimer', 'alles'),  (NULL, 'Abteilungsleiter', 'geHeim', 'datenpflege') 

Jetzt können wir in unserem Programm den Datenbankzugriff machen.

if ( isset($_POST['aktion']) and $_POST['aktion'] == 'einloggen' ) {     if ( isset($_POST['nutzerid']) and trim($_POST['nutzerid']) != ''           and           isset($_POST['kennwort']) and trim($_POST['kennwort']) != ''         )     {         // überprüfen, ob Zugangsdaten korrekt sind         $nutzerid_formular = trim($_POST['nutzerid']);         $kennwort_formular = trim($_POST['kennwort']);         $zugang = $db->prepare("SELECT id, nutzerid, kennwort, rechte                FROM zugangsdaten WHERE nutzerid=? && kennwort=? ");         $zugang->bind_param('ss',$nutzerid_formular, $kennwort_formular);         $zugang->execute();         $zugang->bind_result($id, $nutzerid, $kennwort, $rechte);         while ($zugang->fetch()) {             //  echo "<li> $id $nutzerid $kennwort, $rechte";         }         // echo "<p>Treffer $nutzerid / $kennwort: ". $zugang->num_rows ."</p>";         if (  $zugang->num_rows == 1 ) {             $_SESSION['eingeloggt']['nutzerid'] = $nutzerid;             $_SESSION['eingeloggt']['rechte']   = $rechte;         }         else         {             echo "<p>Bitte korrekte Zugangsdaten eingeben!</p>";             unset ($_SESSION['eingeloggt']['nutzerid']);             unset ($_SESSION['eingeloggt']['rechte']);         }            }     else      {         echo "<p>Bitte Formular komplett ausfüllen</p>";     } } 

Jetzt bauen wir das um, dass der Einloggbereich immer oben im Kopf kommt und wir uns bei der Neuanlage von Seiten nicht mehr darum kümmern müssen.

<!DOCTYPE html> <html lang="de"> <head>     <meta charset="UTF-8">     <title>Datenpflegeanwendung in PHP - Beispielprojekt PHP-Kurs.com</title>     <link href="design.css" rel="stylesheet"> </head> <body> <div id="seite"> <header>         <div id="einloggbereich"> <?php if ( isset($_POST['aktion']) and $_POST['aktion'] == 'ausloggen' ) {     echo "<p>Sie wurden ausgeloggt</p>";     unset ($_SESSION['eingeloggt']['nutzerid']);     unset ($_SESSION['eingeloggt']['rechte']);   } if ( isset($_POST['aktion']) and $_POST['aktion'] == 'einloggen' ) {     if ( isset($_POST['nutzerid']) and trim($_POST['nutzerid']) != ''           and           isset($_POST['kennwort']) and trim($_POST['kennwort']) != ''         )     {         // überprüfen, ob Zugangsdaten korrekt sind         $nutzerid_formular = trim($_POST['nutzerid']);         $kennwort_formular = trim($_POST['kennwort']);         $zugang = $db->prepare("SELECT id, nutzerid, kennwort, rechte                 FROM zugangsdaten WHERE nutzerid=? && kennwort=? ");         $zugang->bind_param('ss',$nutzerid_formular, $kennwort_formular);         $zugang->execute();         $zugang->bind_result($id, $nutzerid, $kennwort, $rechte);         while ($zugang->fetch()) {             //  echo "<li> $id $nutzerid $kennwort, $rechte";         }         // echo "<p>Treffer $nutzerid / $kennwort: ". $zugang->num_rows ."</p>";         if (  $zugang->num_rows == 1 ) {             $_SESSION['eingeloggt']['nutzerid'] = $nutzerid;             $_SESSION['eingeloggt']['rechte']   = $rechte;         }         else         {             echo "<p>Bitte korrekte Zugangsdaten eingeben!</p>";             unset ($_SESSION['eingeloggt']['nutzerid']);             unset ($_SESSION['eingeloggt']['rechte']);         }            }     else      {         echo "<p>Bitte Formular komplett ausfüllen</p>";     } } if ( ! isset($_SESSION['eingeloggt']['rechte']) ) { ?> <form action="" method="post">     <label>Nutzer-ID:         <input type="text" name="nutzerid" id="nutzerid">     </label><br>     <label>Kennwort:         <input type="text" name="kennwort" id="kennwort">     </label><br>     <input type="hidden" name="aktion" value="einloggen">     <input type="submit" value="einloggen"> </form> <?php } else { ?> <form action="" method="post">     <input type="hidden" name="aktion" value="ausloggen">     <input type="submit" value="ausloggen"> </form> <?php }    ?>       </div>         <p>Datenverwaltungstool</p> </header> <div id="inhalt"> 

Das Design wird entsprechend ergänzt:

#einloggbereich { 	width: 300px; 	margin-right: 1em; 	text-align: right; 	float: right; 	display: inline-block; 	font-size: 10px !important; } #einloggbereich p { 	margin: 0; 	padding: 0; 	line-height: 1em; } header p { 	line-height: 3.4em; 	padding-left: 1em; 	font-size: 1.5em; } 

Jetzt können wir auf die Rechte zugreifen:

        <tr>             <td>                 <a href="?aktion=anzeigen&id=<?php echo $inhalt->id; ?>">                     anzeigen</a>  <?php              if (isset($_SESSION['eingeloggt']['rechte'])                  and                  (                   $_SESSION['eingeloggt']['rechte'] == 'alles'                    OR $_SESSION['eingeloggt']['rechte'] == 'datenpflege')                  )             { ?>                 <a href="?aktion=bearbeiten&id=<?php echo $inhalt->id; ?>">                     ändern</a>  <?php }             if ( isset($_SESSION['eingeloggt']['rechte'])                   and $_SESSION['eingeloggt']['rechte'] == 'alles' )             { ?>                               <a href="?aktion=sicherheitsabfrage&id=<?php echo $inhalt->id; ?>">                     löschen</a> <?php } ?>             </td>             <td><?php echo $inhalt->id; ?></td>             <td><?php echo bereinigen($inhalt->vorname); ?></td>             <td><?php echo bereinigen($inhalt->nachname); ?></td>             <td><?php echo bereinigen($inhalt->anmerkung); ?></td>             <td><?php echo $inhalt->erstellt; ?></td>         </tr> 

Kompletter Code:

Als gepackter Download unter:
https://www.php-kurs.com/downloads/php-kurs-com-db-anwendung-kmpl.zip

 <?php require_once 'inc/db.php'; $ds_pro_seite = 5; if (isset($_POST['aktion']) and $_POST['aktion']=='speichern' ) {     $vorname = "";     if (isset($_POST['vorname'])) {         $vorname = trim($_POST['vorname']);     }     $nachname = "";     if (isset($_POST['nachname'])) {         $nachname = trim($_POST['nachname']);     }     $anmerkung = "";     if (isset($_POST['anmerkung'])) {         $anmerkung = trim($_POST['anmerkung']);     }     if ( $vorname != '' or $nachname != '' or $anmerkung != '' )      {         // speichern         $einfuegen = $db->prepare("INSERT INTO kontakte             (vorname, nachname, anmerkung, erstellt)             VALUES (?, ?, ?, NOW())");         $einfuegen->bind_param('sss', $vorname, $nachname, $anmerkung);         if ($einfuegen->execute()) {             header('Location: index.php?aktion=feedbackgespeichert');             die();         }         echo "<p>Daten werden gespeichert</p>";     } } require_once 'inc/bereich-kopf.inc.php'; if (isset($_GET['aktion']) and $_GET['aktion'] == 'allesanzeigen') {     unset($_SESSION['suchbegriff']);     $_SESSION['seite_nr_normal'] = 0; } if (isset($_GET['aktion']) and $_GET['aktion'] == 'sicherheitsabfrage') {     if ( isset($_GET['id'])) {         $id_einlesen = (INT) $_GET['id'];         echo '<h1>Sicherheitsabfrage Löschen</h1>';         echo '<p>Soll der folgende Datensatz unwiderruflich gelöscht werden?</p>';         echo '<p><a href="?aktion=loeschen&id='. $id_einlesen.'">endgültig löschen!!</a></p>';         $_GET['aktion'] = 'anzeigen';     } } if (isset($_GET['aktion']) and $_GET['aktion'] == 'anzeigen') {     if ( isset($_GET['id'])) {         $id_einlesen = (INT) $_GET['id'];         if ($id_einlesen > 0) {             echo "<h1>Daten anzeigen von $id_einlesen</h1>";             $dseinlesen = $db->prepare("SELECT id, vorname, nachname, anmerkung, erstellt                                                 FROM kontakte WHERE id = ? ");             $dseinlesen->bind_param('i', $id_einlesen);             $dseinlesen->execute();             $dseinlesen->bind_result($id, $vorname, $nachname, $anmerkung, $erstellt);             $dseinlesen->fetch();             echo "<p>ID: <b> $id </b><br>";                       echo "Vorname: <b> $vorname </b><br>";                       echo "Nachname: <b> $nachname </b><br>";                       echo "Anmerkung: <b> $anmerkung </b><br>";                       echo "erstellt am: <b> $erstellt </b></p>";                       echo '<p><a href="index.php">Tabelle anzeigen</a>';             $dseinlesen->close();             require_once 'inc/bereich-fuss.inc.php';             exit;            }     } } if (isset($_GET['aktion']) and $_GET['aktion'] == 'loeschen') {     // löschen von Datensatz     if (isset($_GET['id'])) {         $id = (INT) $_GET['id'];         if ( $id > 0)         {             $loeschen = $db->prepare("DELETE FROM kontakte WHERE id=? LIMIT 1");             $loeschen->bind_param('i', $id);             if ($loeschen->execute()) {                 echo "<p>Datensatz $id wurde gelöscht</p>";             }         }     } } if (isset($_GET['aktion']) and $_GET['aktion'] == 'feedbackgespeichert') {     echo '<p class="feedbackerfolgreich">Datensatz wurde gespeichert</p>';  } $modus_aendern = false; if (isset($_GET['aktion']) and $_GET['aktion'] == 'bearbeiten') {     $modus_aendern = true; } if (isset($_POST['aktion']) and $_POST['aktion'] == 'korrigieren') {     $id = "";     if ( isset ($_POST['id'])) {         $id = (INT) trim($_POST['id']);     }     $vorname = "";     if (isset($_POST['vorname'])) {         $vorname = trim($_POST['vorname']);     }     $nachname = "";     if (isset($_POST['nachname'])) {         $nachname = trim($_POST['nachname']);     }     $anmerkung = "";     if (isset($_POST['anmerkung'])) {         $anmerkung = trim($_POST['anmerkung']);     }     if ( $id != '' AND ( $vorname != '' or $nachname != '' or $anmerkung != '')) {         $update = $db->prepare("UPDATE kontakte SET                                 vorname = ?, nachname = ?, anmerkung = ?                                 WHERE id = ? LIMIT 1");         $update->bind_param("sssi", $vorname, $nachname, $anmerkung, $id);         if ( $update->execute() ) {             echo '<p class="feedbackerfolg">Datensatz wurde geändert</p>';             $modus_aendern = false;         }     } } ?> <form action="" method="get">     suchen nach:     <input type="hidden" name="aktion" value="suchen">     <input type="text" name="suchbegriff" id="suchbegriff">     <input type="submit" value="suchen"> </form> <?php if ( $modus_aendern == false ) {     $daten = array();     if ( isset($_GET['suchbegriff']) ) {         $_SESSION['seite_nr_suche'] = 0;     }     if ( ! isset($_GET['suchbegriff']) and isset($_SESSION['suchbegriff']) )      {         $_GET['suchbegriff'] = $_SESSION['suchbegriff'];     }     if ( isset($_GET['suchbegriff']) and trim ($_GET['suchbegriff']) != '' )     {         $_SESSION['suchbegriff'] = $_GET['suchbegriff'];         $suchbegriff = trim ($_GET['suchbegriff']);         echo "<p>Gesucht wird nach: <b>$suchbegriff</b>";         echo ' - wieder <a href="?aktion=allesanzeigen">alle Daten anzeigen</a>';         echo "</p>";          $suche_nach = "%{$suchbegriff}%";         $suche = $db->prepare("SELECT id, vorname, nachname, anmerkung, erstellt                   FROM kontakte WHERE nachname LIKE ? OR vorname LIKE ? OR anmerkung LIKE ?");         $suche->bind_param('sss', $suche_nach,$suche_nach,$suche_nach);         $suche->execute();         $suche->store_result();         echo "<p>Treffer: ". $suche->num_rows ."</p>";         $ds_gesamt = $suche->num_rows;         // hier muss die neue SQL-Anweisung rein                 if ( isset($_GET['seite']) ) {                     $seite = $_GET['seite'];                     $_SESSION['seite_nr_suche'] = $_GET['seite'];                 }                 else                 {                     if ( ! isset($_SESSION['seite_nr_suche'])) {                         $_SESSION['seite_nr_suche'] = 0;                         $seite = 0;                     }                     else                     {                         $seite = $_SESSION['seite_nr_suche'];                     }                 }         $suche = $db->prepare("SELECT id, vorname, nachname, anmerkung, erstellt                   FROM kontakte WHERE nachname LIKE ? OR vorname LIKE ? OR anmerkung LIKE ?                  LIMIT $seite, $ds_pro_seite                  ");         $suche->bind_param('sss', $suche_nach,$suche_nach,$suche_nach);         $suche->execute();         // Am Anfang muss noch die Seitenzahl auf 0 gesetzt werden, wenn es ein Wechsel          // zwischen suche und normale Anzeige gibt!         $suche->bind_result($id, $vorname, $nachname, $anmerkung, $erstellt);         while ($suche->fetch()) {             $daten[] = (object) array('id' => $id,                                'vorname'   => $vorname,                                'nachname'  => $nachname,                                'anmerkung' => $anmerkung,                                'erstellt'  => $erstellt);         }         $suche->close();         $id        = '';         $vorname   = '';         $nachname  = '';         $anmerkung = '';         $erstellt  = '';     }     else     {         if ($erg = $db->query("SELECT * FROM kontakte")) {             if ($erg->num_rows) {                 $ds_gesamt = $erg->num_rows;                 $erg->free();                 if ( isset($_GET['seite']) ) {                     $seite = $_GET['seite'];                     $_SESSION['seite_nr_normal'] = $_GET['seite'];                 }                 else                 {                     if ( ! isset($_SESSION['seite_nr_normal']) )                      {                         $_SESSION['seite_nr_normal'] = 0;                         $seite = 0;                     }                     else                     {                         $seite = $_SESSION['seite_nr_normal'];                     }                 }                 if ($erg = $db->query("SELECT * FROM kontakte LIMIT $seite, $ds_pro_seite  ")) {                     while ($datensatz = $erg->fetch_object()) {                         $daten[] = $datensatz;                     }                 }                 // echo "<li>". $erg->num_rows;                 // while ($datensatz = $erg->fetch_object()) {                 //     $daten[] = $datensatz;                 // }                 $erg->free();             }         }     } if ( ! count($daten) ) {     echo "<p>Es liegen keine Daten vor :(</p>"; } else { ?> <table>     <thead>         <tr>             <th>Nutzeraktion</th>             <th>ID</th>             <th>Vorname</th>             <th>Nachname</th>             <th>Anmerkung(en)</th>             <th>erstellt</th>         </tr>     </thead>     <tbody>         <?php         foreach ($daten as $inhalt) {         ?>         <tr>             <td>                 <a href="?aktion=anzeigen&id=<?php echo $inhalt->id; ?>">anzeigen</a>  <?php              if ( isset($_SESSION['eingeloggt']['rechte']) and ($_SESSION['eingeloggt']['rechte'] == 'alles' OR $_SESSION['eingeloggt']['rechte'] == 'datenpflege') )             { ?>                 <a href="?aktion=bearbeiten&id=<?php echo $inhalt->id; ?>">ändern</a>  <?php }             if ( isset($_SESSION['eingeloggt']['rechte']) and $_SESSION['eingeloggt']['rechte'] == 'alles' )             { ?>                               <a href="?aktion=sicherheitsabfrage&id=<?php echo $inhalt->id; ?>">löschen</a> <?php } ?>             </td>             <td><?php echo $inhalt->id; ?></td>             <td><?php echo bereinigen($inhalt->vorname); ?></td>             <td><?php echo bereinigen($inhalt->nachname); ?></td>             <td><?php echo bereinigen($inhalt->anmerkung); ?></td>             <td><?php echo $inhalt->erstellt; ?></td>         </tr>         <?php         }         ?>     </tbody> </table> <?php         echo "<p>Seite: ";         $durchgang = 1;         for ($i = 0; $i < $ds_gesamt; $i=$i+$ds_pro_seite) {             if ( $i == $seite )             {                 echo '<span class="seite_aktuell">'. $durchgang .'</span> ';             }             else             {                 echo '<a class="seite_nr" href="?seite='. $i .'">'. $durchgang .'</a> ';             }             $durchgang++;         }     } } else {     echo "<h1>Daten ändern</h1>";     if ( isset($_GET['id'])) {         $id_einlesen = (INT) $_GET['id'];         if ($id_einlesen > 0) {             $dseinlesen = $db->prepare("SELECT id, vorname, nachname, anmerkung                                                 FROM kontakte WHERE id = ? ");             $dseinlesen->bind_param('i', $id_einlesen);             $dseinlesen->execute();             $dseinlesen->bind_result($id, $vorname, $nachname, $anmerkung);             while ($dseinlesen->fetch()) {                 // echo "<li>";                 // echo $id ." / ". $vorname . " ". $nachname;                       }         }     } } if ( ! isset($vorname) ) {     $vorname = ''; } if ( ! isset($nachname) ) {     $nachname = ''; } if ( ! isset($anmerkung) ) {     $anmerkung = ''; } ?> <form id="datenpflege" action="" method="post">     <p><label><span>Vorname:</span>         <input type="text" name="vorname" id="vorname" value="<?php echo $vorname; ?>">     </label></p>     <p><label><span>Nachname:</span>         <input type="text" name="nachname" id="nachname" value="<?php echo $nachname; ?>">     </label></p>     <p><label><span>Anmerkung(en):</span>         <textarea name="anmerkung" id="anmerkung"><?php echo $anmerkung; ?></textarea>         </label></p>     <?php         if ($modus_aendern != true ) {         echo '<input type="hidden" name="aktion" value="speichern">';         echo '<p><span> </span><p><input type="submit" value="speichern"></p>';     }     else     {         echo '<input type="hidden" name="aktion" value="korrigieren">';         echo '<input type="hidden" name="id" value="'. $id .'">';         echo '<p><span> </span><input type="submit" value="ändern"></p>';     }     ?> </form> <?php require_once 'inc/bereich-fuss.inc.php'; ?> 

Code für Kopf „inc/bereich-kopf.inc.php“

<!DOCTYPE html> <html lang="de"> <head>     <meta charset="UTF-8">     <title>Datenpflegeanwendung in PHP - Beispielprojekt PHP-Kurs.com</title>     <link href="design.css" rel="stylesheet"> </head> <body> <div id="seite"> <header>     <div id="einloggbereich"> <?php if ( isset($_POST['aktion']) and $_POST['aktion'] == 'ausloggen' ) {     echo "<p>Sie wurden ausgeloggt</p>";     unset ($_SESSION['eingeloggt']['nutzerid']);     unset ($_SESSION['eingeloggt']['rechte']);   } if ( isset($_POST['aktion']) and $_POST['aktion'] == 'einloggen' ) {     if ( isset($_POST['nutzerid']) and trim($_POST['nutzerid']) != ''           and           isset($_POST['kennwort']) and trim($_POST['kennwort']) != ''         )     {         // überprüfen, ob Zugangsdaten korrekt sind         $nutzerid_formular = trim($_POST['nutzerid']);         $kennwort_formular = trim($_POST['kennwort']);         $zugang = $db->prepare("SELECT id, nutzerid, kennwort, rechte                 FROM zugangsdaten WHERE nutzerid=? && kennwort=? ");         $zugang->bind_param('ss',$nutzerid_formular, $kennwort_formular);         $zugang->execute();         $zugang->bind_result($id, $nutzerid, $kennwort, $rechte);         while ($zugang->fetch()) {             //  echo "<li> $id $nutzerid $kennwort, $rechte";         }         // echo "<p>Treffer $nutzerid / $kennwort: ". $zugang->num_rows ."</p>";         if (  $zugang->num_rows == 1 ) {             $_SESSION['eingeloggt']['nutzerid'] = $nutzerid;             $_SESSION['eingeloggt']['rechte']   = $rechte;         }         else         {             echo "<p>Bitte korrekte Zugangsdaten eingeben!

"
; unset ($_SESSION['eingeloggt']['nutzerid']); unset ($_SESSION['eingeloggt']['rechte']); } } else { echo "<p>Bitte Formular komplett ausfüllen</p>"; } } if ( ! isset($_SESSION['eingeloggt']['rechte']) ) { ?> <form action="" method="post"> <label>Nutzer-ID: <input type="text" name="nutzerid" id="nutzerid"> </label><br> <label>Kennwort: <input type="text" name="kennwort" id="kennwort"> </label><br> <input type="hidden" name="aktion" value="einloggen"> <input type="submit" value="einloggen"> </form> <?php } else { ?> <form action="" method="post"> <input type="hidden" name="aktion" value="ausloggen"> <input type="submit" value="ausloggen"> </form> <?php } ?> </div> <p>Datenverwaltungstool</p> </header> <div id="inhalt">

Code für Fuß „inc/bereich-fuss.inc.php“

</div> <footer>     <p>Beispielprogramm www.PHP-Kurs.com <?php if ( isset($_SESSION['eingeloggt']['nutzerid']) ) {     echo " | ". $_SESSION['eingeloggt']['nutzerid'];     echo " (". $_SESSION['eingeloggt']['rechte'] .")";       } ?>     </p> </footer> </div> </body> </html> 

Code für Design „design.css“

* {     margin: 0;     padding: 0; }   html, body {     height: 100%; }   #seite {     position: relative;     min-height: 100%;     margin: 0 auto; }  footer {     position:absolute;     bottom: 0;     width: 100%;     background-color: yellow;     height: 2em; }  #einloggbereich { 	width: 300px; 	margin-right: 1em; 	text-align: right; 	float: right; 	display: inline-block; 	font-size: 10px !important; }  #einloggbereich p { 	margin: 0; 	padding: 0; 	line-height: 1em; }  #inhalt { 	margin: 0 1em; }  #inhalt h1, #inhalt p, form  { 	margin-top: 1em; }  body { 	font-family: sans-serif; }  header, footer { 	color: white; 	background-color: #333; 	background-color: ; 	background: #003366; /* Old browsers */ /* FF3.6-15 */ 	background: -webkit-linear-gradient(left,  hsla(210,100%,20%,1) 1%,hsla(213,100%,66%,1) 100%); /* Chrome10-25,Safari5.1-6 */ 	background: -webkit-linear-gradient(left, hsla(210,100%,20%,1) 1%, hsla(213,100%,66%,1) 100%); 	background: linear-gradient(to right,  hsla(210,100%,20%,1) 1%,hsla(213,100%,66%,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ 	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#003366', endColorstr='#519fff',GradientType=1 ); /* IE6-9 */ }  header p { 	line-height: 3.4em; 	padding-left: 1em; 	font-size: 1.5em; }  footer p { 	line-height: 2em; 	padding-left: 1em; }  table { 	width: 100%; 	margin-top: 1em; }  td { 	padding: 0.2em; }  thead tr { 	color: white; 	background-color: #333; }  tbody tr:nth-child(odd) { 	background-color: #eee; }  tbody tr:nth-child(even) { 	background-color: #ccc; }  tr:hover { 	background-color: limegreen !important; }  .seite_aktuell, .seite_nr { 	display: inline-block; 	color: white; 	background-color: limegreen; 	width: 1.4em; 	height: 1.4em; 	text-align: center; 	line-height: 1.4em; 	font-size: 1.2em; 	color: white; }  .seite_nr { 	background-color: darkblue; }  .seite_nr:hover { 	background-color: deepskyblue; 	background-color: orange; }  form#datenpflege { 	border: 1px solid black; 	border-radius: 1em; 	padding: .2em 1em; 	background-color: #ddd; }  #datenpflege span { 	display: inline-block; 	width: 140px; 	float: left; } 

Code für DB-Aufbau „inc/db.php“

<?php session_start();  error_reporting(E_ALL); // error_reporting(0); $db = new mysqli('localhost', 'root', 'root', 'adressbuch'); $db->set_charset('utf8');  if ($db->connect_errno){     die('Sorry - gerade gibt es ein Problem'); }  function bereinigen($inhalt='') {     $inhalt = trim($inhalt);     $inhalt = htmlentities($inhalt, ENT_QUOTES, "UTF-8");     return($inhalt); } ?>