PHP schwierikeiten mit Einstig
Guten Abend,
habe mir das Buch Einstieg 5.3& Mysql 5.4 gekauft und bin gerade am üben!
Leider komme ich nicht mit einem Beispiel PHP Skript zurecht!
Möchte auf meinem Webserver auf meine Datenbank zugreifen!
Der Code sieht folgendermaßen aus !
Auf meiner Seite bekomme ich aber leider nur diese Ausgabe!
Was mache ich falsch?
Wie kann ich den Code besser debugen?
Gibt es bessere Bücher?
Lg
habe mir das Buch Einstieg 5.3& Mysql 5.4 gekauft und bin gerade am üben!
Leider komme ich nicht mit einem Beispiel PHP Skript zurecht!
Möchte auf meinem Webserver auf meine Datenbank zugreifen!
Der Code sieht folgendermaßen aus !
<html>
<body>
<?php
/* Verbindung aufnehmen */
$host = "localhost";
$user = "root";
$pass = "xxxxxxxx";
$con = mysqli_connect($host,$user,$pass);
if(!$con)
{
exit("Verbindungsfehler: ".mysqli_connect_error());
}
/* Datenbank auswählen */
mysqli_select_db("firma");
/* SQL-Abfrage ausführen */
$res = mysqli_query("select * from personen");
/* Anzahl Datensätze ermitteln und ausgeben */
$num = mysqli_num_rows($res);
echo "$num Datensätze gefunden<br />";
/* Datensätze aus Ergebnis ermitteln, */
/* in Array speichern und ausgeben */
while ($dsatz = mysqli_fetch_assoc($res))
{
echo $dsatz["name"] . ", "
. $dsatz["vorname"] . ", "
. $dsatz["personalnummer"] . ", "
. $dsatz["gehalt"] . ", "
. $dsatz["geburtstag"] . "<br />";
}
?>
</body>
</html>
Auf meiner Seite bekomme ich aber leider nur diese Ausgabe!
Datensätze gefunden
Wie kann ich den Code besser debugen?
Gibt es bessere Bücher?
Lg
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 304232
Url: https://administrator.de/contentid/304232
Ausgedruckt am: 23.11.2024 um 00:11 Uhr
5 Kommentare
Neuester Kommentar
Hallo Zwergenalarm.
Fehlermeldungen hast du aktiviert !?
ERSTE Zeile (noch über <html> !)
Gehe nicht davon aus das etwas funktioniert, überprüfe es !
Die Verbindung zur Datenbank hat funktioniert da es scheinbar nicht zu dem "exit" gekommen ist. Aber wie sieht es mit den Anweisungen danach aus !?
Wurde die Datenbank wirklich ausgewählt ? Die kann gerade jetzt auch eine Defekt aufweisen oder wurde möglicherweise gelöscht !? Kann dein Programm damit weiterarbeiten.
Und das Query ? Wurde das erfolgreich abgesetzt ? Was wenn die Tabelle doch einen anderen Namen hat(z.B. Tippfehler) oder die Datenbank nicht ausgewählt werden konnte ;)
Hier muss ein Fehler vorliegen !
Denn andernfalls müsste
Lass dir den Wert von $num mal mit
Lass dir dann die Rückgabewerte der vorherigen Funktionen ausgeben bzw. prüfe sie auf Plausibilität.
z.B.
Lasse dir die Fehlermeldungen anzeigen.
Ansonsten sieht das eigentlich funktionsfähig aus.
~Arano
Fehlermeldungen hast du aktiviert !?
ERSTE Zeile (noch über <html> !)
<?php
ini_set("display_errors", "On" );
ini_set("error_reporting", E_ALL );
?>
Gehe nicht davon aus das etwas funktioniert, überprüfe es !
Die Verbindung zur Datenbank hat funktioniert da es scheinbar nicht zu dem "exit" gekommen ist. Aber wie sieht es mit den Anweisungen danach aus !?
Wurde die Datenbank wirklich ausgewählt ? Die kann gerade jetzt auch eine Defekt aufweisen oder wurde möglicherweise gelöscht !? Kann dein Programm damit weiterarbeiten.
Und das Query ? Wurde das erfolgreich abgesetzt ? Was wenn die Tabelle doch einen anderen Namen hat(z.B. Tippfehler) oder die Datenbank nicht ausgewählt werden konnte ;)
Hier muss ein Fehler vorliegen !
Denn andernfalls müsste
mysqli_num_rows()
eine "0" oder eine größere Zahl zurück liefern. Bei die ist es aber "leer" weswegen ich auf "FALSE" tippe. Und das weist auf einen Fehler hin, der davor gefallen sein muss.Lass dir den Wert von $num mal mit
var_dump()
ausgeben.Lass dir dann die Rückgabewerte der vorherigen Funktionen ausgeben bzw. prüfe sie auf Plausibilität.
z.B.
$res = mysqli_query("select * from personen");
if( FALSE===is_resource($res) )
{
// TODO
// Query ist gescheitert... Ups, was machen wir nun !?
// Daten auflisten ist ja sinnlos wenn es keine Daten gibt.
}
Ansonsten sieht das eigentlich funktionsfähig aus.
~Arano
Hallo zwergenalarm,
du kannst entweder die Seite regelmäßig neu laden lassen oder du arbeitest mit AJAX...
Zum Thema AJAX wäre hier eine beispielhafte Anleitung.
Beste Grüße!
Berthold
du kannst entweder die Seite regelmäßig neu laden lassen oder du arbeitest mit AJAX...
Zum Thema AJAX wäre hier eine beispielhafte Anleitung.
Beste Grüße!
Berthold