Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Auf bestimmten Datensatz bei mysql_fetch_array zugreifen

Hallo zusammen,

ich habe bisher mysql_fetch_array immer so verwendet:

Code:                   In Zwischenablage kopieren (nur IE)
1">

Das funktioniert auch wunderbar. Nun möchte ich aber direkt auf die Datenfelder der Datensätze zugreifen und zwar ohne while Schleife.

Ich stelle mir das so vor:

1. Datensatz: echo $row[0]["userID"]
2. Datensatz: echo $row[1]["userID"]
...

Aber genau das klappt nicht :-(

Wisst ihr wie der Array aufgebaut ist?

Danke und schöne Grüße

Flo
Hier gehts zum Orginal Eintrag "Auf bestimmten Datensatz bei mysql_fetch_array zugreifen" im Forum

Antworten

Das Lesen aus der Datenbank erfolgt meines Wissens sequentiell. Dementsprechend befindet sich immer nur ein Datensatz im Array. Deshalb benötigst du immer eine Schleife um die Daten aus der Datenbank auszulesen. Wenn du nur ein Ergebnis erwartest dann kannst du dein Array in direktem zugriff auslesen sonst bekommst du immer nur den ersten Datensatz und keine weiteren Daten. Du könntest theoretisch deine Daten in ein zusätzliches Array einlesen und diese anschließend auswerten was aber aus meiner sicht keinen sinn ergibt aber das bleibt dir selbst überlassen.


2.

mysql_fetch_array() gibt genau einen Datensatz zurueck. Wenn dich nicht mehr als einer interessiert, dann lass die Schleife halt weg:
Code:                   In Zwischenablage kopieren (nur IE)
2">




3.

[quote]pecos postete
mysql_fetch_array() gibt genau einen Datensatz zurueck. Wenn dich nicht mehr als einer interessiert, dann lass die Schleife halt weg:
Code:                   In Zwischenablage kopieren (nur IE)
3">

[/quote] Hallo,

erstmal danke für beide Antworten. Hier noch ein paar Infos zum Hintergrund meiner Frage. Ich haben 4 DIV Container die jeweils Daten aus einem Datensatz enthalten. Da die DIV Container aber an unterschiedlichen Orten sind kann ich nicht mit einer Schleife arbeiten, da sonst alle DIV Container übereinander liegen (die Positionierung wäre ja innerhalb der Schleife gleich). Meine Idee war es nun das MySQL Statement auszuführen, die Datensätze per fetch_array einzulesen und direkt in die DIV Container einzubauen. Also Datensatz 1 kommt in den DIV Container 1, Datensatz 2 in DIV Container 2, usw. Ich möchte ungern für jeden DIV Container eine eigene MySQL Abfrage machen.

Danke

Flo


4.

Zitat:
Ich möchte ungern für jeden DIV Container eine eigene MySQL Abfrage machen.
Was sollte dagegen sprechen? Die einmillionstel Sekunde, die die Abfrage kostet?


5.

Na dann so in der Art:
Code:                   In Zwischenablage kopieren (nur IE)
4">




6.

Vielleicht hilft dir [doc]mysql_data_seek[/doc] weiter... Ansonsten die Daten alle in einem Array abspeichern und dann an der entsprechenden Stelle ausgeben...

Code:                   In Zwischenablage kopieren (nur IE)
5">




7.

Danke nochmals für die Antworten.

Ich hab jetzt pecos Lösung genommen, die ging am schnellsten ;-)

[quote]pecos postete
Na dann so in der Art:
Code:                   In Zwischenablage kopieren (nur IE)
6">

[/quote]


Hier gehts zum Orginal Eintrag "Auf bestimmten Datensatz bei mysql_fetch_array zugreifen" im Forum
 
phpforum.de | Impressum