Mailinglisten-Archive |
Hi Heiko, >while ($rowplz=3Dmysql_fetch_array($resultplz)) { >mysql_select_db("vorwahl",$db); >$ort=3D$rowplz[ort]; 1. Mit mysql_select_db w=E4hlst du die Datenbank "vorwahl", die es warscheinlich bei dir gar nicht gibt, da die Tabelle "vorvahl" auch in der Datenbank "nummern" gespeichert ist. Damit m=FC=DFte deine Abfrage nach den Vorwahlen eigentlich schon beim ersten Mal ein leeres Ergebnis liefern. 2. Ich w=FCrde schreiben $ort=3D$rowplz["ort"] 3. Ist Deine Aufteilung der Tabellen ziemlich sinnlos. Dein Programm zeigt einen Ort und mehrere PLZen zu diesem Ort und nur eine Vorwahl an. Du speicherst aber zu jeder PLZ den Ortsnamen neu. Au=DFerdem steht der Name des Ortes nochmal in der Tabelle mit den Vorwahlen! =DCberleg mal wieviel Speicher da=DF allein bei einer Stadt wie Hamburg mit zich verschiedenen PLZen verbraucht. Besser w=E4hren zwei Tabellen in etwa so: Tabelle staedte: StadtID, OrtsName, Vorwahl (Bsp: 1, Hamburg, 040 / 2, Berlin, 030) Tabelle plz: StadtID, PLZ (Bsp: 1, 21149 / 1, 22455 / 2, 14169 / 2, 10115) Au=DFerdem kannst Du so eine Abfrage wie z.B. SELECT staedte.*, plz.* FROM staedte, plz WHERE staedte.StadtID =3D plz.StadtID machen, und erh=E4ltst gleich das komplette Ergebnis. Gru=DF Michael
php::bar PHP Wiki - Listenarchive