Neue Domain erstellen mit MySQL Datenbank: Lösung der richtigen Darstellung der Umlaute

1. Beispiel normales HTML-Programm erstellt durch NVU:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
    <style type="text/css">
     @import url("../FORMATE.CSS") screen;
  </style>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width='100%' height='90%'>
<tr>
  <td align='center'><b>Test Echo mit Umlauten: äöüß ÄÖÜ</b><br>
</table>
<center>
<a target="_blank" Href="../index.html">Homepage Franz Mayr </a>
</center>
<hr>
<small>Änderungsstand des Programms index.html: 20-Sep-2020<br>
</BODY>
</HTML>

2. Beispiel für ein MySQL/PHP-Programm:

2.1 Beim erstmaligem Aufruf der von einem früheren System erstellten Datenbank folgendes Skript:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
  <title>Connect to MySQL-DB, php7, DB franz, 19-Sep-2020</title>
</head>
<body>

<?php
define ( 'MYSQL_HOST', 'xxx' );
define ( 'MYSQL_BENUTZER', 'xxx' );
define ( 'MYSQL_KENNWORT', 'xxx' );
define ( 'MYSQL_DATENBANK', 'xxx' );

$db = mysqli_connect(MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT, MYSQL_DATENBANK);

if ( $db )
  {
   private function getUmlauteArray() { return array( 'ü'=>'ü', 'ä'=>'ä', 'ö'=>'ö', 'Ö'=>'Ö', 'ß'=>'ß',  );

   public function fixeUmlauteDb() {                 
                                    $umlaute = $this->getUmlauteArray();                 
                                    foreach ($umlaute as $key => $value){                                        
                                                                         $sql = "UPDATE table SET tracks = REPLACE(row, '{$key}', '{$value}') WHERE row LIKE '%{$key}%'";  
                                                                        }
                                   }

  }
else
  {
    echo "Fehler: konnte nicht mit MySQL verbinden." . PHP_EOL;
    echo "Debug-Fehlernummer: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debug-Fehlermeldung: " . mysqli_connect_error() . PHP_EOL;
    exit;
  }
?>
</body>
</html>

2.2. Danach wieder ohne Umwandlung der Zeichen:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

  <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
  <title>Connect to MySQL-DB doku Application auf franz-mayr.de</title>

   
</head>
<body>

<?php

define ( 'MYSQL_HOST', 'xxx' );
define ( 'MYSQL_BENUTZER', 'xxx' );
define ( 'MYSQL_KENNWORT', 'xxx' );
define ( 'MYSQL_DATENBANK', 'xxx' );

$db = mysqli_connect (MYSQL_HOST, MYSQL_BENUTZER, MYSQL_KENNWORT, MYSQL_DATENBANK);

if ( $db )
  {
  }
else
  {
    echo "Fehler: konnte nicht mit MySQL verbinden." . PHP_EOL;
    echo "Debug-Fehlernummer: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debug-Fehlermeldung: " . mysqli_connect_error() . PHP_EOL;
    exit;
  }
?>
</body>
</html>

3. Das Aufruf Programm sieht so aus:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head> 
  <style type="text/css">
     @import url("../FORMATE.CSS") screen;
  </style>  
  <meta name="author" content="Heinz Wember Augsburg, php7 20-Sep-2020"> 
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
  <title>DB Heinz Wember Dokumentation: &Uuml;bersicht</title>
</head>
<body>
<br>
<h1>DB Franz Mayr Test Umlaute</h1>
<br>

<?php define("UNLOCK",1);
  include "../db/zugriff-dbtestumlaute.inc.php";
  $sql = "SELECT id, text FROM umlaute";
  $ergebnis = mysqli_query($db, $sql);
?>
  <br>
<h1>&Uuml;bersicht</h1>
<br> 
<table style="width: 63%; text-align: left; margin-right: auto;" border="1" cellpadding="2" cellspacing="2">
  <caption></caption><tbody>
    <tr>
      <td style="width: 3%;">ID</td> 
      <td style="width: 60%;">Text</td> 
    </tr>
<?php while($row = $ergebnis->fetch_assoc())
       {
        echo "<tr> ";
        echo "<td style=width:  3%;> $row[id]</td>";
        echo "<td style=width: 60%;> $row[text]</td></tr>";
       } 
?>
  </tbody>
</table>
<hr>
<center>
<a target="_blank" href="../index.html">Homepage Franz Mayr</a>
</center>
<hr>
<small>&Auml;nderungsstand des Programms Neue_Doamin_erstellen_Darstellung_der_Umlaute.html: 24-Nov-2020
</small>
</body>
</html>