aide condition ecriture dans tableau

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : aide condition ecriture dans tableau

Re: aide condition ecriture dans tableau

par AB » 16 févr. 2011, 21:06

Cela serait plus facile si tu générait un tableau avec les ID comme index et les IMG comme valeur
$ID = 12;
$IMG = 'adresse_image';

$tab = array();

$tab[$ID] = $IMG;
Ensuite pour le prochain ID, avant de rentrer la valeur dans le tableau il te suffit de faire if (isset($tab[$ID])). Et encore si ton tableau est écrit sous cette forme, même sans contrôle, la nouvelle valeur écrasera l'ancienne (et si c'est la même c'est pas gênant)

aide condition ecriture dans tableau

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!