8797 sujets

Développement web côté serveur, CMS

Lorsque je veux afficher le contenu de mon panier, le serveur me répond imnquablement " Undefined offset: 0 in C:\Program Files\EasyPHP 2.0b1\www\www.editions-roidesrois.com\index.php" En gros pour lui il n'y a rien à cet endroit $_SESSION["panier"][0][0]

Je ne vois pas d'ou ca peut venir, d'autant que le tbleau panier est bien créé dans la session (j'ai vérifié dans les fichiers temporaires. Si vous pouvez m'aider...

	<?php
			if(!isset($_SESSION["panier"])) echo'<div class="article"><p style="margin:5px;font-weight:bold">Aucun article dans le panier</p></div>';
			else{
				$nbLignes=count($_SESSION["panier"]);
				
				echo $nbLignes;
				
				for($i=0;$i<$nbLignes;$i++){
				
					$id=$_SESSION["panier"][$i][0];
					
					$sql="SELECT titre, prixVu FROM produit WHERE id=$id";
					$req=mysql_query($sql) or die('SQL error !<br>'.$sql.'<br>'.mysql_error());
					$data=mysql_fetch_assoc($req);
					
					echo '
						<div class="article">
							<p style="margin:5px;">
								<span style="font-weight:bold">'.htmlentities($data["titre"]).'</span>
								<span>Quantité : </span>
						</div>
					';
				}
			}
		?>

Modifié par smon (24 Sep 2007 - 19:00)
Salut smon Smiley cligne ,

C'est assez étonnant d'avoir $_SESSION["panier"][$i][0] plutôt que $_SESSION["panier"][$i] mais bon, faut voir Smiley rolleyes ...

Sinon il faudrait surtout montrer comment ton array est alimenté. Par exemple es-tu sûr que l'indexation commence bien à 0 et pas à 1 Smiley murf !

Et as-tu essayé de faire un :
print_r($_SESSION["panier"]);
ou un :
var_dump($_SESSION["panier"]);


A+
salut

if(!isset($_SESSION["panier"])) 
   echo'<div class="article"><p style="margin:5px;font-weight:bold">Aucun article dans le panier</p></div>';




if (empty($_SESSION["panier"])) 
   echo'<div class="article"><p style="margin:5px;font-weight:bold">Aucun article dans le panier</p></div>';


c'est t'y pas mieux ? Smiley cligne

le tableau $_SESSION['panier'] peux exister tout en étant vide.et pour l'offset, heyoan te donne la solution.


$_SESSION["panier"][0];

affiche le premier élément

$_SESSION["panier"];

affiche le tableau complet