par
michael410 » 16 févr. 2011, 19:08
bonjour
attention gros zero en approche
je m'arrache les cheveux sur ce script,
son but est de stocker (pour chaque article consulté) , son ID et son url image afin de faire une liste de produits déjà consultés
tout marche bien sauf que : si je consulte deux fois le meme article il sera ecrit deux fois dans le tableau
je cherche à écrire une condition du genre:
si $resultat['ID'] est dans le tableau je ne l'ecrit pas, si elle n'y est pas je l'ecrit
du genre (mais qui ne marche pas !)
if (in_array(array($resultat['ID']), $ProdVu)) {
}else{
array_unshift($ProdVu, array("ID" => $resultat['ID'], "IMG" => $resultat[$Image]));
}
<code type="php"> if (isset($_SESSION['ProdVu'])) {
$ProdVu = ($_SESSION['ProdVu']); }
else {
$ProdVu = array(array());
}
// ici bug manque test si article deja present
array_unshift($ProdVu, array("ID" => $resultat['ID'], "IMG" => $resultat[$image]));
if (sizeof($ProdVu) > 8) {
array(array_pop($ProdVu)); }
$_SESSION['ProdVu'] = $ProdVu;
$NbProdVu = sizeof($ProdVu);</code>
pour info un print_r du tableau me donne :
Array ( [0] => Array ( [ID] => 8675 [IMG] => 8675.jpg ) [1] => Array ( [ID] => 14564 [IMG] => 14564.jpg ) [2] => Array ( [ID] => 14564 [IMG] => 14564.jpg ) [3] => Array ( ) )
comment faire un test avant l'ecriture dans le tableau ?
j m'arrache la tete la dessus depuis 14h!
bonjour
attention gros zero en approche
je m'arrache les cheveux sur ce script,
son but est de stocker (pour chaque article consulté) , son ID et son url image afin de faire une liste de produits déjà consultés
tout marche bien sauf que : si je consulte deux fois le meme article il sera ecrit deux fois dans le tableau
je cherche à écrire une condition du genre:
si $resultat['ID'] est dans le tableau je ne l'ecrit pas, si elle n'y est pas je l'ecrit
du genre (mais qui ne marche pas !)
if (in_array(array($resultat['ID']), $ProdVu)) {
}else{
array_unshift($ProdVu, array("ID" => $resultat['ID'], "IMG" => $resultat[$Image]));
}
<code type="php"> if (isset($_SESSION['ProdVu'])) {
$ProdVu = ($_SESSION['ProdVu']); }
else {
$ProdVu = array(array());
}
// ici bug manque test si article deja present
array_unshift($ProdVu, array("ID" => $resultat['ID'], "IMG" => $resultat[$image]));
if (sizeof($ProdVu) > 8) {
array(array_pop($ProdVu)); }
$_SESSION['ProdVu'] = $ProdVu;
$NbProdVu = sizeof($ProdVu);</code>
pour info un print_r du tableau me donne :
Array ( [0] => Array ( [ID] => 8675 [IMG] => 8675.jpg ) [1] => Array ( [ID] => 14564 [IMG] => 14564.jpg ) [2] => Array ( [ID] => 14564 [IMG] => 14564.jpg ) [3] => Array ( ) )
comment faire un test avant l'ecriture dans le tableau ?
j m'arrache la tete la dessus depuis 14h!