bekomme keine Daten angeziegt
Stefan
- php
Hallo zusammen,
ich bin sehr neu dabei mit PHP und wollte zum Anfang erst einmal ganz simple ein paar Daten (die auch in der Tabelle 'steckbrief' vvorhanden sind) mir anziegen lassen und habe folgendes geschrieben (die Verbindung zum Server klappt, bekomme zumindest keine Fehlermeldung angezeigt):
<?php
$db_server = "localhost";
$db_name = "XXXXXX";
$db_passwort = "******";
$connect = mysql_connect( $db_server, $db_name, $db_passwort )
or die ("Es konnte keine Verbindung zum Server hergestellt werden!");
mysql_select_db ("steckbrief");
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel=stylesheet type="text/css" href="../style.css">
<?php
$abfrage = "SELECT * FROM steckbrief WHERE id LIKE 1";
$ergebnis = mysql_query($abfrage);
while ($listen = mysql_fetch_object($ergebnis))
{
$liste = $listen;
}
?>
<title>
Steckbrief von <?php echo $liste->titel; ?>
</title>
</head>
<body>
<table width="95%" border="0" cellspacing="1" cellpadding="1">
<tr>
<td width="60%">Name:</td>
<td width="40%"><?php echo "$liste->name"; ?></td>
</tr>
<tr>
<td width="60%">Nick:</td>
<td width="40%"><?php echo "$liste->spitzname"; ?></td>
</tr>
<tr>
<td width="60%">Geburtstag:</td>
<td width="40%"><?php echo "$liste->gebtag"; ?></td>
</tr>
<tr>
<td width="60%">Geburtsort:</td>
<td width="40%"><?php echo "$liste->ort"; ?></td>
</tr>
</table>
</body>
</html>
<?php
mysql_close($connect);
?>
Würde mich freuen, wenn mir wer weiterhelfen könnte.
Bis denn
Stefan
Hi,
Würde mich freuen, wenn mir wer weiterhelfen könnte.
dazu fehlt uns leider die Basis, nämlich die Fehlerbeschreibung.
Cheatah
Hi,
Würde mich freuen, wenn mir wer weiterhelfen könnte.
dazu fehlt uns leider die Basis, nämlich die Fehlerbeschreibung.
???
Wo bekomme ich die denn her?
Ich bekomme keine Daten angezeigt, mehr kann ich im Moment leider auch nicht sagen :-(.
Hi,
dazu fehlt uns leider die Basis, nämlich die Fehlerbeschreibung.
Wo bekomme ich die denn her?
von Deiner Problemanalyse.
Ich bekomme keine Daten angezeigt, mehr kann ich im Moment leider auch nicht sagen :-(.
Du wirst doch wohl Debug-Ausgaben gemacht und untersucht haben, oder etwa nicht?
Cheatah
Du wirst doch wohl Debug-Ausgaben gemacht und untersucht haben, oder etwa nicht?
Nein?
Wenn Du mir sagen könntest, wie ich das mache, dann probiere ich das gerne mal aus.
Hi,
Du wirst doch wohl Debug-Ausgaben gemacht und untersucht haben, oder etwa nicht?
Nein?
oh. Wenn ein Problem auftritt, analysierst Du es nicht? Krass. Wie konntest Du bisher Erfolge erzielen?
Wenn Du mir sagen könntest, wie ich das mache, dann probiere ich das gerne mal aus.
Mit echo beispielsweise, und mit detektivischem Vorgehen.
Cheatah
oh. Wenn ein Problem auftritt, analysierst Du es nicht? Krass. Wie konntest Du bisher Erfolge erzielen?
Bisher hab ich nur html gemacht, und da ging's recht gut *g*.
Mit echo beispielsweise, und mit detektivischem Vorgehen.
Mit echo gibt man doch nur'nen Text, wie "Keine Verbindung" aus oder wie meinst Du das?
Hi,
Bisher hab ich nur html gemacht, und da ging's recht gut *g*.
HTML hat ja auch nichts mit Programmierung zu tun.
Mit echo beispielsweise, und mit detektivischem Vorgehen.
Mit echo gibt man doch nur'nen Text, wie "Keine Verbindung" aus oder wie meinst Du das?
Mit echo gibt man das aus, was man ausgeben möchte, also beispielsweise auch den Inhalt von Variablen. _Was_ Du ausgeben lässt, ist vom detektivischen Vorgehen abhängig.
Cheatah
Mit echo gibt man das aus, was man ausgeben möchte, also beispielsweise auch den Inhalt von Variablen. _Was_ Du ausgeben lässt, ist vom detektivischen Vorgehen abhängig.
Dann werde ich mal suchen, aber am Quelltext stimmt sonst alles?
hi,
aber am Quelltext stimmt sonst alles?
auch diese frage brauchst du hier eigentlich so nicht zu stellen.
klar kann es immer mal sein, dass einem geübten auge auf anhieb beim kruzen überfliegen deines codes ein fehler auffält - aber grundsätzlich ist und bleibt das debugging, wenn etwas nicht so funktioniert wie gewünscht, vornehmlich deine aufgabe.
dazu empfiehlt es sich u.a., die werte von variablen mal per echo ausgeben zu lassen, "kontroll-echos" innerhalb von if-abfragen einzubauen, um zu sehen ob auchwirklich in den erwarteten zweig gesprungen wird, etc.
zu deinem code mal zwei anmerkungen auf die schnelle:
$abfrage = "SELECT * FROM steckbrief WHERE id LIKE 1";
$ergebnis = mysql_query($abfrage);
beim connecten zur DB hast du noch für eine fehlermeldung gesorgt, falls etwas schief geht, hier hast du diese jedoch versäumt.
ändere den code mal folgendermaßen ab:
$abfrage = "SELECT * FROM steckbrief WHERE id LIKE 1";
$ergebnis = mysql_query($abfrage) or die(mysql_error());
damit bekommst du hier auch eventuell auftretende fehler der datenbank angezeigt - wenn z.b. deine sql-syntax fehlerhaft ist o.ä.
while ($listen = mysql_fetch_object($ergebnis))
{
$liste = $listen;
}
hier überschreibst du in jedem schleifendurchlauf den wert von $liste mit dem aus dem aktuellen datensatz - dir wird also nach der schleife nur noch der wert aus dem allerletzten datensatz derergebnismenge zur verfügung stehen, alle andern sind "weg".
ist das wirklich das, was du beachsichtigst?
gruss,
wahsaga
Hallo!
ändere den code mal folgendermaßen ab:
$abfrage = "SELECT * FROM steckbrief WHERE id LIKE 1";
$ergebnis = mysql_query($abfrage) or die(mysql_error());damit bekommst du hier auch eventuell auftretende fehler der datenbank angezeigt - wenn z.b. deine sql-syntax fehlerhaft ist o.ä.
Ich bekomme die Meldung: No Database Selected
Was soll mir das blos sagen? Ich habe doch localhost, user und pw angegeben.
while ($listen = mysql_fetch_object($ergebnis))
{
$liste = $listen;
}
hier überschreibst du in jedem schleifendurchlauf den wert von $liste mit dem aus dem aktuellen datensatz - dir wird also nach der schleife nur noch der wert aus dem allerletzten datensatz derergebnismenge zur verfügung stehen, alle andern sind "weg".
ist das wirklich das, was du beachsichtigst?
Eigentlich kann ich das auch wegmachen, da ich immer nur einen Datensatz auslesen möchte, denn für die ID 1 gibt es nur einen Satz.
Kann ich dann einfach $ergebnis mit den einzelnen Feldern ausgeben?
OK, Fehler gefunden, er lag hier:
<?php
$db_server = "localhost";
$db_name = "XXXXXX";
$db_passwort = "******";
--> $db_database = "XXXXXX";
$connect = mysql_connect( $db_server, $db_name, $db_passwort )
or die ("Es konnte keine Verbindung zum Server hergestellt werden!");
--> mysql_select_db ("db_database");
?>
Aber nun zeigt er mir ab dem Nick beim Ergebnis hinten dran noch ein 'lk'. Warum?
hi,
Aber nun zeigt er mir ab dem Nick beim Ergebnis hinten dran noch ein 'lk'. Warum?
vielleicht, weil es so bereits in deiner datenbank drinsteht?
gruss,
wahsaga