Page 1 sur 1

Problème de boucle

Posté : 16 juin 2005, 11:18
par xgregx
Bonjour,

J'ai un soucis de boucle, je m'explique:

c'est avant tout une histoire de tableau tout ça.
Je veux enregistrer mes données dans un tableau, jusque là pas de souci.
Puis je veuc en enregistrer d'autres...ils sont tous un nom ces enregistrements et ce que je veux c'est que lorsque j'ai un enregistrement "TOTO" en que j''effectue un nouvel enregistrement "TOTO", la boucle parcoure le tableau, si il trouve un "TOTO", il l'écrase, sinon, il effectue une nouvelle entrée dans le tableau.

Voici mon code:
if (isset($_GET["ajout"])) {
$size = sizeof($caddie[0]);
if ($size != '0'){
$i=0;
while($i<=sizeof($caddie[0])){
if($caddie[$i][0] == '$nom'){
$caddie[$i][0]= array($nom,$qt,$pu,$sub);
$_SESSION["caddie"] = $caddie;
}
else {
$caddie[]= array($nom,$qt,$pu,$sub);
$_SESSION["caddie"] = $caddie;
}
$i++
}
}
else {
$caddie[]= array($nom,$qt,$pu,$sub);
$_SESSION["caddie"] = $caddie;
}

Posté : 16 juin 2005, 11:27
par Cyrano
La structure de ton tableau est un peu curieuse et tu utilises deux sortes de tableaus différents: quelle est exactement la structure de ton panier ?

Posté : 16 juin 2005, 11:35
par xgregx
session_start();

if (isset($_SESSION["caddie"]))
{
    $caddie = $_SESSION["caddie"];
}
else
{
    $caddie = null;
}
En fait $caddie est un tableau contenant un autre tableau:

$caddie[0] va contenir array(nom du produit, quantité, prix unitaire, sous-total)

ce que je voudrais faire c'est lorsque j'ai:
$caddie[0] = array(moto, 2, 2000, 4000)
$caddie[1] = array(auto, 1, 10000,10000)

Si mon client entre une autre moto dans le caddie, je ne veux pas de:
$caddie[3] = array(moto, 3, 2000, 6000)

Mais je veux que ça écrase $caddie[0].

Posté : 16 juin 2005, 16:23
par xgregx
J'ai réussi !