Gut, danke für die drei Posts. Ich habe jetzt folgendes probiert:
$n = 100;
$r = 1;
$rang = array();
foreach($_POST['name'] as $key => $number)
{
if($number == $n)
$name[$key] = $r;
} else {
$zahl = 0;
foreach ($key as $key2 => $val)
{
if (isset($val[$r]) and !is_array($val[$r]))
{
echo 'Hier folgt val und r '.$val[$r].'';
if ($val[$r] == $r)
{
$zahl++;
echo 'Das hier ist zahl '.$zahl.'';
}
}
else
{
echo 'No, is not';
}
}
$r = ($r + $zahl);
while($number != $n) $n--;
$name[$key] = $r;
}
echo ''.var_dump($name).'<br>';
}
}
Heraus bekomme ich:
Warning: Invalid argument supplied for foreach()
array(1) { [Hans]=> int(1) }
This is direct: 1array(2) { [Hans]=> int(1) [Thomas]=> int(1) }
Warning: Invalid argument supplied for foreach()
array(3) { [Hans]=> int(1) [Thomas]=> int(1) [Dieter]=> int(1) }
This is direct: 1array(4) { [Hans]=> int(1) [Thomas]=> int(1) [Dieter]=> int(1) [Johannes]=> int(1) }
Warning: Invalid argument supplied for foreach()
array(5) { [Hans]=> int(1) [Thomas]=> int(1) [Dieter]=> int(1) [Johannes]=> int(1) [Ulf]=> int(1) }
Warning: Invalid argument supplied for foreach()
array(6) { [Hans]=> int(1) [Thomas]=> int(1) [Dieter]=> int(1) [Johannes]=> int(1) [Ulf]=> int(1) [Tom]=> int(1) }
Wird immer länger. $r sollte dabei eigentlich immer größer werden :\
Wo liegt der Fehler?