In der Entwicklung möchte man öfters Daten aus einer Mysql Tabelle ohne großen Programmieraufwand ausgeben. Dieses Php 5 Skript gibt eine beliebige Tabelle komplett mit Sortierfunktion aus. Sie müssen dabei nur die Datenbankverbindung, den Datenbanknamen und den Tabellennamen angeben.
Zweck
Ausgeben einer Datenbanktabelle in HTML Tabellenform.
Sie müssen nur die Datenbankverbindung, den Datenbanknamen und den Tabellennamen angeben. Den Rest erledigt das Programm.
Das mühsame schreiben von HTML Struktur und angeben von Spaltennamen entfällt zur Gänze!
Verwendung
Das PHP Script kann auf einem Webserver mit PHP und Mysql ausgeführt werden. Durch direkten Aufruf dieser Datei werden die Daten aus der Datenbank ausgelesen und in einer sortierbaren HTML Tabelle angezeigt.
Tauschen Sie für die Verwendung einfach folgende Strings mit Ihren Daten aus:
- TABELLENNAME
- localhost (bleibt meistens gleich)
- BENUTZER (Datenbankbenutzer)
- PASSWORT (Datenbankbenutzerpasswort)
- DATENBANKNAME
PHP Code
<?php /*********************************/ /**** (c) Andreas Grundner *******/ /** Automatische Tabellenausgabe**/ /******** mit PHP/Mysql **********/ /****@autor: Andreas Grundner ****/ /** Tabellenname definieren**/ define(TABLENAME, "TABELLENNAME"); /** Datenbankverbindung definieren**/ $con = mysql_connect("localhost","BENUTZER","PASSWORT"); if (!$con)die('Keine Verbindung zur Datenbank' . mysql_error()); mysql_select_db("DATENBANKNAME") or die("Datenbank nicht vorhanden"); /** Ab hier Copyright geschützt **/ echo "<table border='1'><tr>"; $sortBy = (isset($_GET["sortBy"])) ? $_GET["sortBy"] : mysql_field_name(mysql_query("SELECT * FROM " . TABLENAME), 0); $direction = (isset($_GET["direction"])) ? $_GET["direction"] : "ASC"; $sql = "SELECT * FROM " . TABLENAME . " ORDER BY " . $sortBy . " " . $direction; $query = mysql_query($sql); $feldcontainer = array(); /** Spaltenüberschriften **/ echo "<tr>"; for($i = 0; @$feld = mysql_field_name($query, $i); $i++): echo "<td align='center'><strong>" . $feld . " <a href='?sortBy=$feld&direction=ASC'>↑</a> <a href='?sortBy=$feld&direction=DESC'>↓</a>" . "</strong></td>"; $feldcontainer[$i] = $feld; endfor; echo "</tr>"; /** Zeilen **/ if(mysql_num_rows($query)): while($row = mysql_fetch_object($query)): echo "<tr>"; foreach($feldcontainer AS $key => $value): /** $key und nächstes if werden nur für die Spaltenfarbe benötigt **/ if($key % 2 == null): $col = "#EEFDC1"; else: $col = "#EEEEFF"; endif; echo "<td bgcolor='$col'>" . $row->$value . "</td>"; endforeach; echo "</tr>"; endwhile; else: echo "<tr><td colspan='" . count($feldcontainer) ."'>Es befinden sich keine Einträge in der Datenbank</td></tr>"; endif; ?>
Hallo, hast Du schon eine Anpassung für PHP 8.x dafür?
Hallo,
nein leider nicht, sollte aber nicht allzu schwer sein.
Danke, hat sich erledigt – habe es selbst geschafft
Danke, hat sich erledigt – habe es selbst geschafft
Hallo!
was müßte man umstellen um das mit PHP 7.x laufen zu lassen!
bei 5.x läuft alles problemlos, bei 7.x wird nichts mehr angezeigt.
Ok hat sich erledigt habe nun den Fehler gefunden „“ fehlte in hier zeile 10 ( define(TABLENAME, „TABELLENNAME“); ) der erste Tablename muß auch die „“ bekommen
Hallo,
erst mal vielen Dank für das Erstellen läuft eigentlich alles super bis auf eine Fehlermeldung aus die ich nicht ganz schlau werde.
(Notice: Use of undefined constant account – assumed ‚account‘ in C:xampphtdocstesttest.php on line 22)
Ich hoffe Sie können mir da weiterhelfen.
MfG: Sven P
Ich staune über die Funktion dieses Skripts. Sehr einfach zu verwenden. Es funktioniert sehr gut. Man hat ganz fix seine Datenbankeinträge dargestellt. Für Testzwecke ist das ideal!
Vielen Dank, das war auch mein Ziel als ich das Programm vor 3 Jahren schrieb. ;)
läuft nicht kein fehler nix
sehr empfehlenswert, weiter so