Na stronie mam tablice dwuwymiarową jako zmienną sesji np. print_r ($_SESSION['koszyk']); zwraca mi:
Produkt: 3.712901007
Key:
Array
(
[0] => Array
(
[0] => 0
[1] => 3.712901005
[2] => 1
)
[1] => Array
(
[0] => 0
[1] => 3.712901007
[2] => 1
)
[2] => Array
(
[0] => 0
[1] => 3.712901007
[2] => 1
)
[3] => Array
(
[0] => 0
[1] => 3.712901007
[2] => 1
)
)
Czyli są dwa takie rekordy które maja taką samą wartość w [][1] wierszu.
Ta funkcja powinna temu zapobiegać jednak, zmienna $key nigdy mi się nie wyświetla czyli nie znajduje mi powtórzeń chociaż powinno.
if($produkt)
{
$tmp = array();
$tmp[0] = 0;
$tmp[1] = $produkt;
$tmp[2] = 1;
$key = array_search($produkt, $_SESSION['koszyk']);
echo "Produkt: ".$produkt;
echo "Key: ".$key;
print_r ($_SESSION['koszyk']);
if($key)
{
$_SESSION['koszyk'][$key][2]++;
}
else
{
$_SESSION['koszyk'][] = $tmp;
}
}
Tak jakby funkcja array_search w ogóle nie działała. Może do tablicy wielowymiarowej jest jakaś inna funkcja? Albo inaczej się ją przeszukuje?