Hi,
> while($i<$anzahl)
> {
> $abstand = 50;
Abstand wird so in jedem Schleifendurchlauf wieder auf 50 gesetzt.
> $abstand_unten = abs($p_r[$i] - $hz[0]);
> $abstand_oben = abs($p_r[$i] - $hz[1]);
> if($abstand_unten < $abstand_oben < $abstand)
$abstand_unten < $abstand_oben ergibt true oder false.
Und true < 50 oder false < 50 ($abstand ist ja immer 50) ergibt keinen Sinn.
Auch wenn $abstand jeweils der kleinste bis jetzt gefundene Abstand wäre, wäre das immer noch eine Zahl, die sich schlecht mit booleans vergleichen läßt (auch wenn PHP dabei entsprechende Typumwandlungen vornimmt - es kommt höchstwahrscheinlich nicht das raus, was Du willst)
$a müsste dann die Stelle im Array ausgeben dessen Abstand am kleinsten ist oder?
Nö. Da kommt Unsinn bei raus.
cu,
Andreas a/k/a MudGuard