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: Ü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>Ü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>Änderungsstand des Programms Neue_Doamin_erstellen_Darstellung_der_Umlaute.html: 24-Nov-2020
</small>
</body>
</html>