Asmodean, J'ai fait les deux tests que tu me demandes. Ils me retournent tous les deux un array()
quand je met
if ($ch_logi<>"tout")
il me dit variable non définie
Mais si je met
if ($_POST['ch_logi']!="tout")
Il me dit index non défini
Asmodean, J'ai fait les deux tests que tu me demandes. Ils me retournent tous les deux un array()
quand je met
if ($ch_logi<>"tout")
il me dit variable non définie
Mais si je met
if ($_POST['ch_logi']!="tout")
Il me dit index non défini
est-ce que tu as définit un enctype et un nom à ton formulaire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part enctype="text/plain"
deY!
Excusez moi tous mais je dois impérativement quitter
Je vais voir pour me débrouiller par moi même et je vous tiens au courant
En tout cas, honnètement, merci à tous pour votre aide.
Concernant la configuration de PHP :
Chez Free, pour PHP 4 la directive register_globals est positionné sur On (voir phpinfo), ce qui vous permet d'écrire directement $truc au lieu de passer par le tableau superglobal de la méthode d'où provient cette variable. Elle est désactivée pour la version PHP 5 (voir phpinfo bis). Cependant, je rappelle qu'il n'est pas recommandé de l'activer et ce pour diverses raisons (sécurité, pratique, obsolète).
Voila, j'avais promis de tenir au courant de mon évolution. Je le fais, même si c'est près de 48 heures plus tard. Je ne sais pas si ça peut aider quelq'un mais voila, on sait jamais.
Mon problème venais que le formulaire et le script PHP étaient dans la même page et que la validation du formulaire entraînait une réouverture de cette page (formpost3.php dans mon exemple ci-dessous)
j'avais, par exemple, la page suivante
Lors de l'exécution du formulaire, celui-ci n'ayant pas encore été validé j'obtenais le message d'erreur 'index non défini'. mais tout rentrait dans l'ordre lorsque je validais le formulaire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 <HTML> <head> <title>Formulaire avec méthode d'envoi POST</title></head> <body> <form action="formpost3.php" method="post"> Nom utilisateur :<input type="text" name="nom" value=""> <p> Logiciel : <select name="ch_logi"> <option value="tout">tout </option> <option value="access">access </option> <option value="excel">excel </option> <option value="powerPoint">powerPoint </option> <option value="word">word </option> </select> Niveau souhaité : <select name="ch_niveau"> <option value="tout">tout <option value="débutant">débutant <option value="initié">initié <option value="expert">expert </select> Type de dossier : <select name="ch_type"> <option value="tout">tout <option value="cours">cours <option value="exercice">exercice <option value="memento">memento </select> <input type="submit" value="envoyer" name="send"> </form> <?php $bouton = $_POST['send']; $nom = $_POST['nom']; $ch_logi = $_POST['ch_logi']; $ch_niveau=$_POST['ch_niveau']; $ch_type = $_POST['ch_type']; echo 'Bonjour, '.$nom.' vous avez choisi '.$ch_logi.' '.$ch_niveau.' '.$ch_type; ?> </body> </html>
Pour enlever le message d'erreur j'ai placé le symbole @ devant la récupération des variables au début du script PHP
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $bouton = @$_POST['send']; $nom = @$_POST['nom']; $ch_logi = @$_POST['ch_logi']; $ch_niveau=@$_POST['ch_niveau']; $ch_type = @$_POST['ch_type'];
C'est en parcourant ce site, sur le lien http://www.developpez.net/forums/sho...d.php?t=297300
que j'ai pu corriger mon problème
En tout cas, encore une fois, merci à tous ceux qui m'ont aidés.
Jean Noël
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager