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)
suche nach postleitzahlen (eingabe einer ziffer... [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
suche nach postleitzahlen (eingabe einer ziffer...


 
sanktusm
10-09-2005, 19:38 
 
oder mehrerer ziffern.)
Ich möchte dass nach Postleitzahlen gesucht werden kann, die zum Beispiel die Zahlen 7 und 9 am Anfang anfang hat. Muss ich das mit einer Regexabfrage realisieren oder geht das einfacher?

 
penizillin
10-09-2005, 19:44 
 
was soll denn durchsucht werden?

 
sanktusm
10-09-2005, 19:49 
 
z. B. nach postleitzahlen die die ziffern 7 und neun am anfang haben also
die postleitzahlen 79227 und 79110


die postleitzahlen sind in einer datenbank gespeichert (VARCHAR 5) und es soll bei einer teilweisen Übereinstimmung die entsprechenden Daten ausgelesen werden

 
penizillin
10-09-2005, 19:56 
 
SELECT * FROM ... WHERE `plz` LIKE '79%' oder so

 
sanktusm
10-09-2005, 20:15 
 
was zum beispiel wenn jemand 792 eingibt und so also alle postleitzahlen finden soll die mit 792 beginnen. brauche ich da nicht doch eine regexabfrage, die also feststellt mit welchen werten man zu tun hat

z.b. mit der regex abfrage \d{10}/

es ist nur so dass ich noch nicht genau verstanden habe wie das funktioniert.

 
penizillin
10-09-2005, 20:19 
 
was zum beispiel wenn jemand 792 eingibt und so also alle postleitzahlen finden soll die mit 792 beginnen. analog zum beispiel, s. oben.

eine regexabfrage, die also feststellt mit welchen werten man zu tun hat wozu muss man das wissen? es ist nur so dass ich noch nicht genau verstanden habe wie das funktioniert dann probiere es aus.

 
sanktusm
10-09-2005, 20:33 
 
einen fehler
ich möchte % an einen $_POST - Wert anhängen und so sicherstellen das alle zahlen möglich sind.
so also:

<?php
include './db/mysql.inc.php';
include './db/connect.php';

if($_GET['act'] == "action")
{
$plz = $_POST['plz']%;

$sql = "SELECT
firmenname
FROM
adressdaten
WHERE
plz like $plz;";
$result = mysql_query($sql) OR die(mysql_error());
while($row = mysql_fetch_assoc($result))
{
echo $row['firmenname'];
}
}
echo "<p><form action=\"plz.php?act=action\" method=\"post\"><input type=\"text\" name=\"plz\"></form><input type=\"submit\"></p>";

?>

 
penizillin
10-09-2005, 20:36 
 
$plz = $_POST['plz'] . '%'; sowas muss man kennen.

und später: WHERE `plz` LIKE '$plz'

 
sanktusm
10-09-2005, 21:02 
 
irgendwas stimmt irgendwie nicht wenn ich nichts eingebe dann bekomme ich eine ausgabe aller firmennamen aber wenn ich etwas eingebe nichts

 
wahsaga
10-09-2005, 21:08 
 
Original geschrieben von sanktusm
irgendwas stimmt irgendwie nicht
wunderbar *seufz*

- http://www.php-resource.de/forum/showthread.php?s=&threadid=50454
- query ausgeben lassen, und in PMA kontrollieren

 
sanktusm
10-09-2005, 21:16 
 
und was ist pma?

 
wahsaga
10-09-2005, 21:18 
 
phpmyadmin


wenn du den nicht nutzt - dann teste halt in deinem verwendeten DB-frontend.

 
sanktusm
10-09-2005, 21:38 
 
ich habs geschafft. der code muss so aussehen:

<?php
error_reporting(E_ALL);
include './db/mysql.inc.php';
include './db/connect.php';

if($_GET['act'] == "action")
{
$plz = $_POST['plz'].'%';

$sql = "SELECT
firmenname
FROM
adressdaten
WHERE
plz LIKE '$plz';";
$result = mysql_query($sql) OR die(mysql_error());
while($row = mysql_fetch_assoc($result))
{
echo $row['firmenname'];
$null = true;
}
}
if (!isset($null))
{
echo "nix";
}
echo "<p><form action=\"plz.php?act=action\" method=\"post\"><input type=\"text\" name=\"plz\"><input type=\"submit\"></form></p>";

?>

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:01 Uhr.