PHP / mysql problem...

Janchu88

Kapitän zur See , HWLUXX Vize-Superstar
Thread Starter
Mitglied seit
29.11.2005
Beiträge
5.271
Ort
irgendwo im Nirvana...
Hi, habe folgendes Script geschrieben... die verbindung zum SQL server hat auf jeden Fall hin und ich habs auch hinbekommen einzelne Werte auszulesen.

Allerdings wollte ich nun alle Zeilen meiner Tabelle Kunde auslesen und ausgeben. Das Skript läuft ohne Fehler durch, die Ausgabe erfolgt, allerdings sind die lokalen Variablen in denen ich die Werte der Datenbank abfragen will leer...

Die Datenbank hab ich nur zum Test aufgebaut und besteht nur aus der Tabelle kunde mit den 3 Spalten ID,name,vorname und insgesamt 4 eingetragenen Zeilen.

edit: hier nochmal zur veranschaulichung meine tabelle mit der ich arbeiten will...



Code:
<html>
<body>
<?php
$db_server='xxx';
$db_user='xxx';
$db_passwort='xxx';
$db_name='xxx';

//verbindung mit der DB aufbauen
$verbindung = mysql_connect($db_server,$db_user,$db_passwort);
if(!$verbindung)
die ("Der Server kann nicht erreicht werden!");
if(!mysql_select_db($db_name, $verbindung))
die("Die Datenbank  kann nicht angesprochen werden!");

//Result ID  der gewünschten Werte holen
$ergebnis=mysql_query("SELECT ID,name,vorname FROM kunde ORDER BY name",$verbindung);

//Variablen zum Speichern der Abfrage initialsieren
$id = array();
$name = array();
$vorname = array();
$zeile = array();
$i = 0;

//Schleife zum speichern der Werte aus der DB, in die lokalen Variablen
while($zeile = mysql_fetch_array($ergebnis))
{
  $id[$i] = $zeile['id'];
  $name[$i] = $zeile['name'];
  $name[$i] = $zeile['vorname'];
  $i++;
}

//Speicher des SQL servers bereinigen
mysql_free_result($ergebnis);

//Ausgabe der ergebnisse
$i=0;
while($i<count($id))
{
  echo"<b>Name: </b>".$name[i]."<br>";
  echo"<b>Vorname: </b>".$vorname[i]."<br>";
  echo"<b>ID: </b>".$id[i]."<br><br>";
  $i++;
}

//schliessen der verbindung zum server
mysql_close($verbindung);
?>
</body></html>

Ausgabe sieht wie folgt aus:



Wie man sieht lief alles schön durch, nur kam in den lokalen Variablen nichts an.

Was ich noch versucht hab...

Code:
echo "$zeile[0]";

... innerhalb der Schleife, in der die lokalen arrays gefüllt werden sollen. Damit krieg ich alle aus Werte der Spalte[0] (ist die ID) ausgegeben.

Aber wieso wird das ganze nicht in die arrays gespeichert?
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
$ Zeichen vergessen. Da sollte nicht i sondern $i stehen

while($i<count($id))
{
echo"<b>Name: </b>".$name."<br>";
echo"<b>Vorname: </b>".$vorname."<br>";
echo"<b>ID: </b>".$id."<br><br>";
$i++;
}
 
$ Zeichen vergessen. Da sollte nicht i sondern $i stehen

while($i<count($id))
{
echo"<b>Name: </b>".$name."<br>";
echo"<b>Vorname: </b>".$vorname."<br>";
echo"<b>ID: </b>".$id."<br><br>";
$i++;
}


:wall: :wall: :wall:

ja, nu gehts...

Hab vorher nur c# und java programmiert und muss bei jedem skript erstma nachm starten ´n haufen Dollars hinzufügen... -.-

edit: steckte auch noch anderer Fehler drin... hab zeile[1] und zeile[2] beide dem "name" zugewiesen... noch ein vor davor und dann gings... :d
 
Zuletzt bearbeitet:
Den Fehler mach ich auch immer wieder. Bei normalen Variablen ist das meist garnicht das Problem aber spätestens bei so einer Schleifenkonstruktion schreib ich i und nicht $i hin. Irgendwann gewöhnt man sich aber daran.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh