Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide Recherche
659 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
spike
Posté le 23-10-2004 à 02:50:58  profilanswer
 

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 spike 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 ! @++


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


Hit-Parade
Copyright © 1997-2012 Hardware.fr SARL / Groupe LDLC / LesNumeriques.com / Version anglaise du site: BeHardware