MySQL spalten in tabellenform ausgeben
Hallo, möchte 2 Spalten einer Datenbank in Tabellenform ausgeben, später sollen es mal 4 sein.
Das ist das was ich habe:
Ich mache bestimmt viele Fehler. Hab leider sonst keinen Ansprechpartner, deshalb hier die vielen Fragen. Danke für die freundlichen Antworten ;)
Viele Grüße,
Sanastasia
Das ist das was ich habe:
<html>
<head>
<meta charset="utf-8"/>
<title>artikel-ausgeben</title>
</head>
<body>
<?php
$data = array();
$mysqli = new mysqli("localhost", "root", "", "bestelldatenbank");
if ($mysqli->connect_error) {
echo "Verbindungsfehler: " . $mysqli->connect_error;
exit();
}
if (!$mysqli->set_charset("utf-8")) {
echo "Fehler beim Laden von UTF8".$mysqli->error;
}
$sql = "SELECT artikel FROM bestelldatenbank";
if ($ergebnis = $mysqli -> query($sql))
{
$alleSpalten = $ergebnis->fetch_fields();
foreach($alleSpalten As $spalte)
{
echo "Artikelnummer:".$spalte->anr ."<br />\n";
echo "Artikelgruppe:".$spalte->gnr ."<br />\n";
}
$ergebnis -> free();
}
$mysqli ->close();
?>
</body>
</html>
Ich mache bestimmt viele Fehler. Hab leider sonst keinen Ansprechpartner, deshalb hier die vielen Fragen. Danke für die freundlichen Antworten ;)
Viele Grüße,
Sanastasia
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 375641
Url: https://administrator.de/contentid/375641
Ausgedruckt am: 22.11.2024 um 05:11 Uhr
5 Kommentare
Neuester Kommentar
Moin,
So wird das nichts. Das SELECT ist falsch. Du rufst mit dem Befehl die Spalte artikel aus der Datentabelle bestelldatenbank auf und willst dann die Spalten anr und gnr ausgeben. Die sind aber im Query gar nicht vorhanden. Ich vermute mal, dass es eher so heißen sollte:
Für weitere Informationen zu SQL guckst Du hier:
https://www.w3schools.com/sql/sql_select.asp
hth
Erik
Zitat von @Sanastasia:
$sql = "SELECT artikel FROM bestelldatenbank";
if ($ergebnis = $mysqli -> query($sql))
{
$alleSpalten = $ergebnis->fetch_fields();
foreach($alleSpalten As $spalte)
{
echo "Artikelnummer:".$spalte->anr ."<br />\n";
echo "Artikelgruppe:".$spalte->gnr ."<br />\n";
}
$ergebnis -> free();
$sql = "SELECT artikel FROM bestelldatenbank";
if ($ergebnis = $mysqli -> query($sql))
{
$alleSpalten = $ergebnis->fetch_fields();
foreach($alleSpalten As $spalte)
{
echo "Artikelnummer:".$spalte->anr ."<br />\n";
echo "Artikelgruppe:".$spalte->gnr ."<br />\n";
}
$ergebnis -> free();
So wird das nichts. Das SELECT ist falsch. Du rufst mit dem Befehl die Spalte artikel aus der Datentabelle bestelldatenbank auf und willst dann die Spalten anr und gnr ausgeben. Die sind aber im Query gar nicht vorhanden. Ich vermute mal, dass es eher so heißen sollte:
select anr, gnr from artikel
Für weitere Informationen zu SQL guckst Du hier:
https://www.w3schools.com/sql/sql_select.asp
hth
Erik
Moin,
guckst Du da:
http://www.schattenbaum.net/php/mstart.php
Liebe Grüße
Erik
<edit>P.S.: Was mir gerade auffällt. Es wäre besser PHP-Fragen im Bereich PHP zu stellen und nicht in Python. ;)</edit>
guckst Du da:
http://www.schattenbaum.net/php/mstart.php
Liebe Grüße
Erik
<edit>P.S.: Was mir gerade auffällt. Es wäre besser PHP-Fragen im Bereich PHP zu stellen und nicht in Python. ;)</edit>
Hallo Sanastasia.
Dein Fehler ist zu allererste wahrscheinlich das du dir die Fehlermeldungen nicht anzeigen lässt:
So, oder in der PHP.ini oder ggf. in der Apache-Konfiguration. Für ein Entwicklungssystem, nicht im Live-System.
2a. Heißt deine TABELLE wirklich "bestellDATENBANK" ? Deine Datenbank selber heißt schon "bestelldatenbank" hast du darin nicht eine Tabelle "artikel" (o.ä.) mit den Spalten 'anr' und 'gnr' ?
2b. Für dein fehlt das else falls das Query fehlschlägt (s.2a). Da es nichts gibt, siehst du nichts.
~Arano
Dein Fehler ist zu allererste wahrscheinlich das du dir die Fehlermeldungen nicht anzeigen lässt:
<?php
ini_set('display_errors', 'On');
ini_set('error_reporting', E_ALL);
?>
2a. Heißt deine TABELLE wirklich "bestellDATENBANK" ? Deine Datenbank selber heißt schon "bestelldatenbank" hast du darin nicht eine Tabelle "artikel" (o.ä.) mit den Spalten 'anr' und 'gnr' ?
2b. Für dein
if ($ergebnis = $mysqli -> query($sql))
~Arano
Die Frage ist schon etwas her, falls Du aber immer noch keine Lösung hast würde ich dir empfehlen die Struktur des gesamten Codes etwas umzugestalten. Denn nur wenn Du verstehst was Du tust, wird es Früchte tragen.
Zuerst stellen wir eine Verbindung mit dem Server her:
Danach machen wir eine Abfrage auf Deinem MySQL Server:
Erstellen eines Schleifen-Arrays:
Und geben das Ergebnis in einer Tabelle aus:
Alles zusammen würde es dann so aussehen:
Zuerst stellen wir eine Verbindung mit dem Server her:
$servername = "localhost";
$username = "user";
$database = "bestelldatenbank";
$password = "password";
$con = new mysqli($servername, $username, $password, $database);
Danach machen wir eine Abfrage auf Deinem MySQL Server:
$sql="SELECT artikel FROM bestelldatenbank";
Erstellen eines Schleifen-Arrays:
$result = mysqli_query($con, $sql);
while($rows = mysqli_fetch_array($result));
Und geben das Ergebnis in einer Tabelle aus:
<table>
<tbody>
<tr>
<td><?php echo $rows["artikel"]; ?></td>
</tr>
</tbody>
</table>
Alles zusammen würde es dann so aussehen:
<table>
<tbody>
<?php
$servername = "localhost";
$username = "user";
$database = "bestelldatenbank";
$password = "password";
$con = new mysqli($servername, $username, $password, $database);
$sql="SELECT artikel FROM bestelldatenbank";
$result = mysqli_query($con, $sql);
while($rows = mysqli_fetch_array($result)) { ?>
<td><?php echo $rows["artikel"]; ?></td>
<?php } ?>
</tr>
</tbody>
</table>