Arry aus mysql tabelle lesen

hallo leute und zwar hab ich folgendes Problem:

zur zeit lese ich meine daten noch aus einer Arry die folgendermaßen aussieht:

$aUsers = array(
„Ädams Egbert“,
„Altman Alisha“,
„Archibald Janna“,

);
d.h. ich lesen alle meie daten aus der php datei.

da mir aber gesagt wurde dass das sehr altmodisch ist habe ich alle daten in eine mysql tabelle eingetragen. diese tabelle hat aber nicht nur eine spalte , sondern mehrere aber es sollen wie hier nur der Vornamen und der Nachname ausgelesen werden und wieder in die Variable $aUser „gepackt“ werden.

mfg

Hallo

zur zeit lese ich meine daten noch aus einer Arry die
folgendermaßen aussieht:

$aUsers = array(
„Ädams Egbert“,
„Altman Alisha“,
„Archibald Janna“,

);
d.h. ich lesen alle meie daten aus der php datei.

Ist vielleicht nicht so günstig, wie wäre es
mit einer Textdatei, die so:
[david.csv.txt]

...
Ädams, Egbert
Altman, Alisha
Archibald, Janna
...

aussieht?

Die kannst Du wunderbar mit ‚fgetcsv‘ zur
Programmlaufzeit einlesen:

http://de.php.net/fgetcsv

 ...
 $zeile = 0;
 $aUsers = Array();
 $fh = fopen('/pfad/zu/david.csv.txt', 'r'); // zum Lesen öffnen
 while(($feld = fgetcsv($fh, 1000, ',')) !== FALSE) {
 if(count($feld) \>= 2) { // 2 Felder in der Zeile?
 aUsers[] = "$feld[0] $feld[1]" 
 $zeilen++;
 }
 }
 fclose($fh);
 ...

da mir aber gesagt wurde dass das sehr altmodisch ist

„Altmodisch“ gilt nicht. „Sinnvoll“ oder „nicht sinnvoll“
ist die Frage.

habe ich alle daten in eine mysql tabelle eingetragen.

Wie benutzt Du mysql von PHP aus? Über
‚mysql‘, ‚mysqli‘ oder ‚PDO‘?
==> http://bytes.com/groups/php/732234-should-i-use-mysq…

diese tabelle hat aber nicht nur eine spalte , sondern
mehrere aber es sollen wie hier nur der Vornamen und der
Nachname ausgelesen werden und wieder in die Variable
$aUser „gepackt“ werden.

Wie verwaltest Du denn die Daten in der Datenbank?
Was passiert, wenn namen sich ändern, hinzukommen
oder wegfallen?

Grüße

CMБ

dankeschön für die rasche antwort! (:

ich benutze die mysql datenbank von FUNPIC.de
genau die namen sind mit ids vergeben sodass sie später von den usern verändert werden können. diese optionen habe ich auch schon alle realisiert …

funtkioniert alles wunderbar. Bei den namen stehen auch noch Ort, geburtsdatum usw. in einer Spalte.Und es melden sich täglich auch neue User an.

Die arry verwende ich für eine fix und fertiges PHP/AJAX Script dass ich mir aus dem Internet geholt habe. Es handelt sich um ein „autocomplete Textfeld“ Sprich wenn man z.b. „da“ eingibt wird automatisch ein dabobert haas oder eine dagmar maierhofer vorgeschlagen… das tut aber jetzt eig nichts zur sache :smiley:

aber was ich will ist eigentlich dass ich nicht jeden zweite tag diese arry aktualisieren muss sondern dass das auch gleich aus der mysql tabelle gelesen wird :smile:

darum ist das mit der txt datei auch nicht so eine gute idee… weil die daten im prinzip ständig aktualisiert werden.

mfg

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ich verstehe nicht genau was du damit meinst, dass du alle Daten aus der DB auslesen willst. Warum willst du Daten aus der DB auslesen, welche du garnicht brauchst, oder habe ich da was falsch verstanden?

Wenn du z.B. die Daten aus der Datenbank über MySql abfrägst, werden sie immer als array zurückgeliefert, wenn du die Funktion fetch_assoc() benutzt, was du allerdings nicht brauchst wenn du nur daten eines Benutzers suchst.

Mal als Beispiel für die Suche nach einem Benutzer:

<?php $db = new mysqli("hostname(in übungsumgebung"localhost")", "benutzername(wenn nicht geändert "root")", "passwort(wenn keins gesetzt dann "")", "db-name");
$sql = "SELECT `tabellenname`.`vorname_db`, `tabellenname`.`nachname_db`, `tabellenname`.`geburtsdatum_db` FROM `tabellenname` WHERE `tabellenname`.`id` = '1'"; $result = $db-\>query($sql); $daten = $result-\>fetch\_object(); $vorname = $daten-\>vorname\_db; $nachname = $daten-\>nachvorname\_db; $geburtsdatum = $daten-\>geburtsdatum\_db; /\* Nun hast du die relevanten Daten eines Benutzers, du kannst natürlich das query erweitern und noch mehr daten eines Benutzers raussuchen oder die Where Bedingung ändern wenn du andere Daten zum suchen hast. wenn du jetzt allerdings alle Benutzer aus der DB auslesen willst, dann würde das so aussehen:\*/ $db = new mysqli("localhost", "root", "", "db-name"); $sql = "SELECT `tabellenname`.`vorname_db`, `tabellenname`.`nachname_db`, `tabellenname`.`geburtsdatum_db` FROM `tabellenname`"; $result = $db-\>query($sql); while($array = $result-\>fetch\_assoc()) { $x[$i]['vornamename'] = $daten['vorname\_db']; $x[$i]['nachnamename'] = $daten['nachname\_db']; $x[$i]['geburtsdatum'] = $daten['geburtsdatum\_db']; $i++; } /\*dein Array heißt nun $x, schau dir die Struktur an wenn du folgendes schreibst:\*/ print\_r($x); ?\> Ich hoffe mal ich konnte dir ein wenig helfen oder neue Ideen hervorbringen. MFG