Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2362 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  probleme erreur Undefined offset variables de session

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme erreur Undefined offset variables de session

n°880570
shubb83
Posté le 23-10-2004 à 01:32:07  profilanswer
 

Bonjour à tous, je suis en train de faire un devis en ligne avec des variables de session mais j'ai une erreur qui me bloque completement :  
 
Notice: Undefined offset: 0 in c:\documents and settings\david\bureau\macap\scripts\essai3.php on line 17
 
cela arrive uiniquement quand je veux retirer un produit qui est avant le dernier de la liste du devis, si je supprime le dernier ca marche impeccable
 
voila le script :
 
<? session_start();
 
if (isset($_GET["quantite"])){
$reference = $_GET['reference'];
   $designation = $_GET['designation'];
    $quantite = $_GET['quantite'];
     
    $_SESSION["reference"][] = $reference;
    $_SESSION["designation"][] = $designation;
    $_SESSION["quantite"][] = $quantite;}
if (isset($_GET["refresh"])){
 
    $nb = count ($_SESSION["reference"]);
    echo '<table><tr><td>Référence</td><td>Désignation</td><td>Quantité</td><td></td></tr>';
     
    for ($i=0; $i<$nb;$i++){
    echo '<tr><td>'.$_SESSION["reference"][$i].'</td><td>'.$_SESSION["designation"][$i].'</td><td>'.$_SESSION["quantite"][$i].'</td><td><a href="essai3.php?reference='.$_SESSION["reference"][$i].'&vali='.$i.'">supprimer</a></td></tr>';}?>
    </table><?
    }else{
     
   $i=$_GET["vali"];
    unset($_SESSION["reference"][$i]);
    unset($_SESSION["designation"][$i]);
    unset($_SESSION["quantite"][$i]);
    die('<META HTTP-equiv="refresh" content="1;URL=essai3.php?refresh=1">');}?>
     
 
    <a href="essai.php">retour</a>
 
Voila merci de m'aider et @ bientot
       
 

mood
Publicité
Posté le 23-10-2004 à 01:32:07  profilanswer
 

n°880580
Profil sup​primé
Posté le 23-10-2004 à 02:50:58  answer
 

revu et corrigé en partie, maintenant vais me coucher :)
 
explication :  
pour ton id de tableau tu commencais tjr a 0, hors si tu vire ton article correspondant a la position 0, tu afficheras toujours la ligne, mais blanche, avec un bouton supprimer.  
j'ai un peu revu ton code, et ai pensé a initialisé tes variables de sessions...ca plante grave sinon. j'ai donc fait un parcours des tableaux via foreach pour tomber a chaque fois sur un id valide :)
 
 
je te certifie que ca fonctionne chez moi :)
 

Code :
  1. <?
  2. session_start();
  3. if (!is_array($_SESSION['reference'])) $_SESSION['reference'] = array();
  4. if (!is_array($_SESSION['designation'])) $_SESSION['designation'] = array();
  5. if (!is_array($_SESSION['quantite'])) $_SESSION['quantite'] = array();
  6. if (isset($_GET['quantite'])){
  7.  
  8.    
  9.     $_SESSION['reference'][] = $_GET['reference'];
  10.     $_SESSION['designation'][] =$_GET['designation'];
  11.     $_SESSION['quantite'][] = $_GET['quantite'];
  12. }   
  13. if (isset($_GET["refresh"])){
  14.  print_r($_SESSION); 
  15.     $nb = count ($_SESSION["reference"]);
  16.    
  17.     echo '<table><tr><td>Référence</td><td>Désignation</td><td>Quantité</td><td></td></tr>';
  18.    
  19.     foreach($_SESSION['reference'] as $cle=>$valeur){
  20.      echo '<tr><td>'.$_SESSION["reference"][$cle].'</td>
  21.       <td>'.$_SESSION["designation"][$cle].'</td>
  22.       <td>'.$_SESSION["quantite"][$cle].'</td>
  23.       <td>
  24.       <a href="essai3.php?reference='.$_SESSION["reference"][$cle].'&vali='.$cle.'">supprimer</a>
  25.       </td>
  26.       </tr>';
  27.     }
  28.     ?>
  29.     </table>
  30.     <?
  31.     }else{
  32.    $i=$_GET["vali"];
  33.     unset($_SESSION["reference"][$i]);
  34.     unset($_SESSION["designation"][$i]);
  35.     unset($_SESSION["quantite"][$i]);
  36.     die('<META HTTP-equiv="refresh" content="1;URL=essai3.php?refresh=1">');
  37.     }
  38.     ?>
  39.    
  40.     <a href="essai.php">retour</a>


Message édité par Profil supprimé le 23-10-2004 à 02:53:41
n°880693
shubb83
Posté le 23-10-2004 à 12:29:37  profilanswer
 

Super Spike, ca marche impeccable effectivement, il suffisait apparemment d'attribuer les variables à un tableau... Merci beaucoup et bonne journée à toi ! @++

n°2227754
karima-dok​ala
ddd
Posté le 12-05-2014 à 00:25:02  profilanswer
 

slt j'ai un petite probleme au niveau de supp de panier et je sais pas ou existe l'erreur tu peux m'aider stp et merci d'avance
 
<?php  
session_start();
$index = $_GET['index'];  
$panier = $_SESSION['panier'];
unset($panier[$index]);  
$_SESSION['panier'] = $panier;
header("location:votre-panier.php?panier=1" );  
?>
 
<?
session_start();
if (!is_array($_SESSION['reference'])) $_SESSION['reference'] = array();
if (!is_array($_SESSION['designation'])) $_SESSION['designation'] = array();
if (!is_array($_SESSION['quantite'])) $_SESSION['quantite'] = array();
if (isset($_GET['quantite'])){
 
   
    $_SESSION['reference'][] = $_GET['reference'];
    $_SESSION['designation'][] =$_GET['designation'];
    $_SESSION['quantite'][] = $_GET['quantite'];
}    
if (isset($_GET["refresh"])){
 print_r($_SESSION);  
    $nb = count ($_SESSION["reference"]);
   
    echo '<table><tr><td>Référence</td><td>Désignation</td><td>Quantité</td><td></td></tr>';
   
    foreach($_SESSION['reference'] as $cle=>$valeur){
     echo '<tr><td>'.$_SESSION["reference"][$cle].'</td>
      <td>'.$_SESSION["designation"][$cle].'</td>
      <td>'.$_SESSION["quantite"][$cle].'</td>
      <td>
      <a href="essai3.php?reference='.$_SESSION["reference"][$cle].'&vali='.$cle.'">supprimer</a>
      </td>
      </tr>';
    }
    ?>
    </table>
    <?
    }else{
   $i=$_GET["vali"];
    unset($_SESSION["reference"][$i]);
    unset($_SESSION["designation"][$i]);
    unset($_SESSION["quantite"][$i]);
    die('<META HTTP-equiv="refresh" content="1;URL=essai3.php?refresh=1">');
    }
    ?>
   
    <a href="essai.php">retour</a>
     
 
l'errreur si  
 
Notice: Undefined offset: 0 in C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\data\localweb\projects\template2\votre-panier.php on line 30
 
Notice: Undefined offset: 0 in C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\data\localweb\projects\template2\votre-panier.php on line 30
 
Notice: Undefined offset: 0 in C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\data\localweb\projects\template2\votre-panier.php on line 31
 
:??:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  probleme erreur Undefined offset variables de session

 

Sujets relatifs
probleme de layout dans un panel[Résolu] Problème Dfil Images
Variables : probleme d'un débutantProbleme avec la fonction GetCurrentThread sous XP
problème de listesPetit Probleme : Connexion a sa base de donnée sous Multimania
Problème avec la TabulationProblème de Link avec Qt 2.2.2
probleme avec identifiant de session dans l'URL 
Plus de sujets relatifs à : probleme erreur Undefined offset variables de session


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR