Homepage selbermachen 7.852 Themen, 35.619 Beiträge

WIe lese ich aus einer Datenbank Datensätze (kein Array)

Heinz_Malcher / 7 Antworten / Baumansicht Nickles

Hallo,

kennt jemand einen Befehl, wie ich beispielsweise Zeile 0, 1 und 2
aus einer Datenbank mit einem NON Array Befehl lese??

Gruss Heinz

bei Antwort benachrichtigen
thomas woelfer Heinz_Malcher „WIe lese ich aus einer Datenbank Datensätze (kein Array)“
Optionen

verstehe die frage nicht. warum denkst du das du gezwungen bist datensaetze in ein array einzulesen? nehme mal an es geht bei dir noch immer um php... dann schau einfach mal nach den verschiedenen mysql_fetch_... varianten - mysql_fetch_object() liefert die daten beispielsweise als objekte...

WM_HOPETHISHELPS
thomas woelfer

this posting contains no tpyos.
bei Antwort benachrichtigen
Heinz_Malcher thomas woelfer „verstehe die frage nicht. warum denkst du das du gezwungen bist datensaetze in...“
Optionen

hallo thomas,

genau um PHP geht es immer noch :)

zur zeit lese ich meine daten eigentlich mit einem array aus:
$ergebnis=mysql_query("SELECT * FROM tabellenname;");
while($inhalt=mysql_fetch_row($ergebnis))


die sache war eigentlich nur die suche nach dem korrekten befehl, wie ich den array vermeiden kann.

Danke

Gruss Heinz

bei Antwort benachrichtigen
thomas woelfer Heinz_Malcher „hallo thomas, genau um PHP geht es immer noch : zur zeit lese ich meine daten...“
Optionen

wie gesagt: statt mysql_fetch_row, z.b. mysql_fetch_object(). das ist _ungeheuer_ praktisch, wenn man spaeter was aendern will. angenommen die tabelle hat die spalten: id,name,nachname,ort und dein querystring lautet: select * from.... blablabal.

mit dem fetch_row() hast du dann hinterher ein ding mit dem du in etwa wie folgt arbeiten kannst:

print $arr[1]; // -> druck den name.

so, nun angenommen du baust in die tabelle eine weiter spalte namens geburtstag ein, und zwar, weil es dafuer andere gruende gibt, direkt hinter der id. dadurch wird rutsch der name im array nach hinten, und du musst dann ueberall deinen code aender, so das dann da

print $arr[2];

steht.

das ist reichlich bloed, weil viel arbeit. besser ist das mit fetch_object(), denn das liefert dir ein object auf das du zugreifen kannst. um den namen auszudrucken wuerdest du dann folgendes verwenden:

$o = mysql_fetch_object( blabalba );
print $o->name;

... und das muss man nie mehr aendern, egal was man an der tabelle veraendert.

WM_HOPETHISHELPS
thomas woelfer






this posting contains no tpyos.
bei Antwort benachrichtigen
Heinz_Malcher thomas woelfer „wie gesagt: statt mysql_fetch_row, z.b. mysql_fetch_object . das ist _ungeheuer_...“
Optionen

genau das wollte ich wissen :-) vielen dank

bei Antwort benachrichtigen
xafford thomas woelfer „wie gesagt: statt mysql_fetch_row, z.b. mysql_fetch_object . das ist _ungeheuer_...“
Optionen

tut mir ja leid, daß ich da noch was hinzu zu fügen habe meister ;o)...abere mysql_fetch_array und mysql_fetch_assoc (eigentlich das selbe wie array) können auch mit realen spaltennamen umgehen, da sie ein assoziatives array erstellen. der aufruf ist dann nicht:
print $wert[0] sondern $wert[\"ID\"]

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
xafford Heinz_Malcher „WIe lese ich aus einer Datenbank Datensätze (kein Array)“
Optionen

mysql_result ist die einzige funktion, die kein array zurückliefert, da sie aber auch nur eine zelle die über einen offset oder den bezeichner gekennzeichnet wird.
aber mal eine blöde frage, warum willst du ein array vermeiden?

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen
Heinz_Malcher xafford „mysql_result ist die einzige funktion, die kein array zurückliefert, da sie...“
Optionen

hmm gute frage :)) hätte mich eigentlich nur so mal interessiert, ob das auch anders geht

bei Antwort benachrichtigen