Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
MySQL Aufgabe! [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
MySQL Aufgabe!


 
soa
06-02-2007, 11:38 
 
Hallo Hallo,

ich kenne mich nicht so gut aus in Sachen MySQL, aber ich stelle mich der Herausvorderung eine website zu erstellen mit einer Filialsuche. So, nu such ich schon seit Wochen im Web, aber ausser Fach-Chinesich finde ich nichts passendes.

1-START:
Eine Datenbank namens "agenturen" mit PLZ, ORT, STRASSE, AGENTUR, TELEFON habe ich angelegt. Es sind ca. 50 Agenturen eingetragen.

2-AUFGABE:
In einer PHP-Seite ist ein einfaches Formular eingebunden

<form method="post">Bitte Ihre PLZ eingeben:<input name="plz" size="5" maxlength="5"><input type="submit" value="OK"></form>

Ich möchte, dass wenn der user seine PLZ eingibt, Ihm auf der einer anderen php-Seite eine Filiale aus meiner Datenbank angezeigt wird, die seiner PLZ am nächsten ist.

3-FRAGE
Ist das möglich? Und wie sähe dann das PHP-Script dazu aus, ich habe zwar schon ein paar Versuche hinter mir, die möchte ich Euch hier aber nicht antun, Ich habe die Idee, dass ich die eingegebene PLZ von den anderen in der DB abziehe und den geringsten Wert als Ergebniss nehme, aber ich weiss nicht wie ich das script dazu schreibe

DANKE schonmal im Voraus

 
MelloPie
06-02-2007, 12:31 
 
klar ist das möglich Du kannst über die koordinaten und einer zuordnung von PLZ entfernungen berechnen und die nächsten filialen suchen...

 
splasch
06-02-2007, 12:32 
 
Ich würd das mit BETWEEN lösen.Dabei so vorgehen den Wert aus deinem Formular die Plz.
$PLZ1= $Plz + Wert (Die zahl für die reichweite)
$PLZ2= $Plz - Wert

Und dann einfach nee Sql Abfrage:

Select * from Tabelle where PLZ BETWEEN '$PLZ1' AND '$PLZ2';

Schon bekomste alle werte die dazwischen enthalten sind also in der Nähe.


Bsp. PLz = 1100 ,Plz1= 1150,PLz2=1080

 
soa
06-02-2007, 12:38 
 
Danke Splash, das sieht sehr einfach aus. Ich werde es gleich ausprobieren. Aber wie kriege ich es hin, das er mir die Daten für die nun gefundene Filiale anzeigt, d.h. plz, adresse, name...

und was trage ich bei "Wert" ein?

 
Kropff
06-02-2007, 12:53 
 
das sind grundlagen, die man sich vorher aneignen sollte. z.b. bei mir (http://www.peterkropff.de)

gruß
peter

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:15 Uhr.