Vollpfosten: ksort

Beitrag lesen

so, habe ein problem gelöst, kriege die 5 besten ergebniss in einer tabelle angezeigt, nun habe ich aber das problem, das es nicht die 5 besten ergebnisse sind.
wenn ich zum beispiel 24105 angebe, dann muesste er ja die 5 besten in unmittelbarer nähe von 24105 angeben, driekt in der näche sind ungefähr 10 filialen
ich kriege aber 5 filialen angezeigt, die nicht in unmittelbarer nähe sind, aber in der differenz von $diff = 1000;
wenn ich also z.b. $diff = 10 eingebe und dann nach 24105 eingebe, dann bekomme ich alle in der unmittelbaren näche angezeigt, wie ich es haben mächte, erhöhe ich die differenz wird der wert wieder ungenauer, wenn ich dann mal ne plz eingebe, wo in der näche keine filiale ist, kriege ich auch nichts angezeigt, das ist irgendwie doof
gibt es da keine bessere lösung

gebt mal unter
www.vizacon.de/coop/php2.html
24105 ein und ihr kriegt  filialen aus büddelsodrf, aus lübeck angezeigt und nicht nur aus kiel, obwohl kiel mehr als 10 filialen hat

Nun kriege ich aber alles angezeigt und nicht die 5 besten ergebnisse
unter www.vizacon.de/coop/php2.html

diesmal keine ... :)
ich kriege die fehlermeldung in zeile 35, das bedeutet </table>, wieso, hier nochmal der ganze code:

while ($data = fgetcsv($fp, 1000, ";")) {
if (abs($data[2] - $PLZ) < $diff) {
  $key=$diff;
  $stack_of_results[$key][]=$data; # Achtung $diff ist nicht unique, daher hier als ArrayOfArrays speichern }
}
ksort($stack_of_results);
$output = array_slice ($stack_of_results, 0, 5);
$c=0;
foreach($output as $v){
  $c++;
  echo 'Ergebnis '.$c;
foreach($v as $one){
  echo join(', ',$one).'<hr>';
}
}

weil dir hier ein } fehlt, das } daß du _nach_ dem kommentar geschrieben hast bleibt kommentar

Achtung $diff ist nicht unique, daher hier als ArrayOfArrays speichern }

lg
Ludwig