Mailinglisten-Archive |
Aloha, > ---------- > Von: 520040307849-0001_(at)_t-online.de[SMTP:520040307849-0001_(at)_t-online.de] > > Es ist ein Datensatz mit 40225 vorhanden, und mit dem möchte ich > eigentlich > auch arbeiten, ich komme jetzt aber einfach nicht mehr weiter. > ok, nachdem wir jetzt wissen was du eigentlich wolltest .... ;) Ich nehm mal stark an, daß deine PLZ-Spalte HOFFENTLICH ein Integer-Feld ist ... und kein CHAR(5). Da ist schon der Vergleich mit "like" nicht so ganz elegant. > <? > > include("include.php"); > $plz = 40212; > echo "$plz <br>"; $NichtGefunden = 1; $VergleichsZiffern = 5; > do { $multiplikator = pow(10, 5-$VergleichsZiffern); $min = substr($plz,0,$VergleichsZiffern) * $multiplikator; $max = ( $min + 1 ) * $multiplikator; > $sql = 'select * from kunde where ' $sql .= " PLZ >= $min AND PLZ <= $max " > $sql .= 'order by PLZ Limit 1'; > $res = mysql_query($sql); $a_erg = mysql_fetch_array(); if ( $a_erg[$plz] ) { echo 'Bestpassende $plz aus der DB ist ' . $a_erg[$plz] . '<br>'; $NichtGefunden = 0; > } > } > while ( $NichtGefunden == 1 && $Vergleichsziffern > 1 ); if ( $Vergleichsziffern == 0 ) { echo 'Leider kein Ergebnis gefunden'; } > ?> > > Sollte die bestpassende PLZ ausgeben (ungetestet).
php::bar PHP Wiki - Listenarchive