Probleme avec index en PHP
                    
        
     
             
                    davidmickael
    
        
    
                    Messages postés
            
                
     
             
            124
        
            
                                    Statut
            Membre
                    
                -
                                     
Dalida Messages postés 7114 Statut Contributeur -
        Dalida Messages postés 7114 Statut Contributeur -
        Bonjour,
Bonjour,
J'ai ma page boutique.php qui a ce script là, pour formulaire:
j'ai ce script la:
qui appelle ce script là (sessionvisite2.php):
et j'ai l'erreur suivante qui est générée,
quand j'appuie sur vider le panier:
"Notice: Undefined index: ajout in c:\program files\easyphp1-8\www\siteboutiqueshop\sessions\testssitesession\boutique2\sessionvisite2.php on line 20
la session doit être détruite !!!(-----)CA C 'est le fichier sessionvisite!(-----)"
l'ajout a l'air de bien se faire quant à lui!
Pourquoi donc, quelqu'un pourrait-il m'aider?
                
            
                
    
    
    
        Bonjour,
J'ai ma page boutique.php qui a ce script là, pour formulaire:
j'ai ce script la:
... <form action="sessionvisite2.php" method="post"> <input type="hidden" name="id" value="<?php echo $id ; ?>" /><! RECUPERATION DE ID (COURANTE, actuelle)..-> <input type="submit" name="ajout" value="AJOUTER CADDIE" /> <input type="submit" name="vide" value="VIDER LE PANIER!!" > </form> ...
qui appelle ce script là (sessionvisite2.php):
<?php
@session_start ()  ; 	
if  ($_POST['ajout']){  
if (!isset ($_SESSION['monpanier'] ) )
{   
	 $_SESSION['monpanier'] = array()  ; //J'INITIALISE A UN TABLEAU VIDE..//
} 											
else
{
	$_SESSION['monpanier'] = $_SESSION['monpanier']++      ; 
}
$_SESSION['monpanier'][] = $_REQUEST['id']  ;
print_r($_SESSION['monpanier']) ;
}
else  if($_POST['vide']) //TEST SI le bouton vider est enclenché!//
{
echo "la session doit être détruite !!!(-----)" ; 
$_SESSION['monpanier'] = array()   ;
session_destroy() ;
}
echo "CA C 'est le fichier  sessionvisite!(-----)" ;
et j'ai l'erreur suivante qui est générée,
quand j'appuie sur vider le panier:
"Notice: Undefined index: ajout in c:\program files\easyphp1-8\www\siteboutiqueshop\sessions\testssitesession\boutique2\sessionvisite2.php on line 20
la session doit être détruite !!!(-----)CA C 'est le fichier sessionvisite!(-----)"
l'ajout a l'air de bien se faire quant à lui!
Pourquoi donc, quelqu'un pourrait-il m'aider?
        A voir également:         
- Probleme avec index en PHP
- Index téléphonique - Guide
- Telecharger index - Télécharger - Gestion de fichiers
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Index rapport de stage - Guide
2 réponses
                        
                    salut,
tu dois tenter de vider le panier alors qu'il est vide.
tu devrais tester l'existence de la variable avant de la vider.
et il faut écrire 'else if' en un seul mot.
                
                
    
                tu dois tenter de vider le panier alors qu'il est vide.
tu devrais tester l'existence de la variable avant de la vider.
et il faut écrire 'else if' en un seul mot.
                        
                    Salut,
Juste une précision :
manuel php :: Vous pouvez avoir plusieurs elseif qui se suivent les uns après les autres, après un if initial. Le premier elseif qui sera évalué à TRUE sera exécuté. En PHP, vous pouvez aussi écrire " else if " en deux mots et son comportement sera identique à la version en un seul mot. La sémantique des deux expressions est légèrement différente, mais au bout du compte, le résultat sera exactement le même.
Nice dreams *C
    
                Juste une précision :
manuel php :: Vous pouvez avoir plusieurs elseif qui se suivent les uns après les autres, après un if initial. Le premier elseif qui sera évalué à TRUE sera exécuté. En PHP, vous pouvez aussi écrire " else if " en deux mots et son comportement sera identique à la version en un seul mot. La sémantique des deux expressions est légèrement différente, mais au bout du compte, le résultat sera exactement le même.
Nice dreams *C
    salut,
c'est pas léger un ours !!!
pour la sémantique c'était un clin d'œil à un MP récent et le conseil c'était dans le cadre de bonnes pratiques.
on s'en tape de pouvoir écrire 'elseif' en deux mots, c'est bien bien plus lisible et logique de l'écrire en un seul.
si tu veux vraiment un article, tu peux regarder les conventions de nommage de Pear, il ne s'amuse pas à l'écrire en deux mots.
    
    c'est pas léger un ours !!!
pour la sémantique c'était un clin d'œil à un MP récent et le conseil c'était dans le cadre de bonnes pratiques.
on s'en tape de pouvoir écrire 'elseif' en deux mots, c'est bien bien plus lisible et logique de l'écrire en un seul.
si tu veux vraiment un article, tu peux regarder les conventions de nommage de Pear, il ne s'amuse pas à l'écrire en deux mots.
    Re,
Dans ta logique, c'est plus clair et lisible. Cependant, ce n'est pas le cas de tout le monde...
T'façon, j'sais pas pourquoi on discute de ça, puisque je l'écris aussi en un seul mot ;-) Ah oui, c'était pour dire que de toute façon, de l'écrire en un, ou deux, cela n'a pas d'influence...
PS : je suis anticonformiste... ;-)
Bon app'
    Dans ta logique, c'est plus clair et lisible. Cependant, ce n'est pas le cas de tout le monde...
T'façon, j'sais pas pourquoi on discute de ça, puisque je l'écris aussi en un seul mot ;-) Ah oui, c'était pour dire que de toute façon, de l'écrire en un, ou deux, cela n'a pas d'influence...
PS : je suis anticonformiste... ;-)
Bon app'
    La différence c'est que quand on écrit elseif, c'est un seul mot clé particulier, lié à un if précédent.
Alors que quand on écrit else if, c'est un bloc else, sans accolade car suivi d'un et un seul bloc d'instruction, le if.
Il y a une différence de traitement entre les deux au niveau de l'interpréteur, et probablement aussi au niveau du compilateur...
    Alors que quand on écrit else if, c'est un bloc else, sans accolade car suivi d'un et un seul bloc d'instruction, le if.
Il y a une différence de traitement entre les deux au niveau de l'interpréteur, et probablement aussi au niveau du compilateur...
