Test variable de session
Résolu/Fermé
t671
Messages postés
1440
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
31 octobre 2024
-
Modifié par t671 le 6/05/2013 à 18:17
t671 Messages postés 1440 Date d'inscription lundi 25 février 2008 Statut Membre Dernière intervention 31 octobre 2024 - 7 mai 2013 à 18:18
t671 Messages postés 1440 Date d'inscription lundi 25 février 2008 Statut Membre Dernière intervention 31 octobre 2024 - 7 mai 2013 à 18:18
A voir également:
- Test variable de session
- Test performance pc - Guide
- Test composant pc - Guide
- Redmi note 13 5g test - Accueil - Téléphones
- Test performance pc gratuit - Accueil - Utilitaires
- Test hdd - Télécharger - Informations & Diagnostic
12 réponses
loupix57
Messages postés
316
Date d'inscription
mercredi 20 mars 2013
Statut
Membre
Dernière intervention
1 juin 2015
14
6 mai 2013 à 18:38
6 mai 2013 à 18:38
Ben montre d'abord comment tu les enregistrent ?
ça doit être une erreur toute bête !
ça doit être une erreur toute bête !
t671
Messages postés
1440
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
31 octobre 2024
11
Modifié par t671 le 6/05/2013 à 19:32
Modifié par t671 le 6/05/2013 à 19:32
1° script (script de saisie):
2° script (script de test) :
3° script (insertion dans la base) : ci-dessus 1° post.
Merci.
<?php session_start(); $nom = $_SESSION['nom']; $prenom = $_SESSION['prenom']; $famille = $_SESSION['famille']; $sexe = $_SESSION['sexe']; $monfichier = $_SESSION['monfichier']; $nais_expression1 = $_SESSION['expression1']; $nais_jour1 = $_SESSION['jour1']; $nais_mois1 = $_SESSION['mois1']; $nais_an1 = $_SESSION['an1']; ................. ?> <html> ................. <tr align="left"><td>Famille :</td> <td width="765"><SELECT name="famille"> <OPTION VALUE="HUMBERT">HUMBERT</OPTION> <OPTION VALUE="DAMERON">DAMERON</OPTION> <OPTION VALUE="DAQUIN">DAQUIN</OPTION> </SELECT></td></tr> <tr align="left"><td><b>NOM : </td><td width="765"><input name="nom" type="text" id="nom" size="55" maxlength="55"></td></tr> <tr align="left"><td>Prénom : </td><td width="765"><input name="prenom" type="text" id="prenom" size="55" maxlength="55"/></td></tr> <tr align="left"><td>Sexe :</td> <td width="765"><SELECT name="sexe"> <OPTION VALUE="M">M</OPTION> <OPTION VALUE="F">F</OPTION> </SELECT></td></tr> <tr><td><input type="hidden" name="MAX_FILE_SIZE" value="2000000" /> <input type="file" name="monfichier" size="51" /></td></tr><p> <td width="200">Date de naissance :</td> <td width="800"> <SELECT name="expression1"> <OPTION VALUE="Vers">Vers</OPTION> <OPTION VALUE="Avant">Avant</OPTION> <OPTION VALUE="Après">Après</OPTION> <OPTION VALUE="Entre">Entre</OPTION> </SELECT> <SELECT name="jour1"> <OPTION VALUE="1">1</OPTION> <OPTION VALUE="2">2</OPTION> <OPTION VALUE="3">3</OPTION> <OPTION VALUE="4">4</OPTION> .................. <SELECT name="mois1"> <OPTION VALUE=""></OPTION> <OPTION VALUE="JAN">JAN</OPTION> <OPTION VALUE="FEB">FEB</OPTION>................. </SELECT> <input name="an1" type="text" id="an1" size="3" maxlength="4"/>
2° script (script de test) :
<?php session_start(); $_SESSION['nom']=$_POST['nom']; $_SESSION['prenom']=$_POST['prenom']; $_SESSION['famille']=$_POST['famille']; $_SESSION['sexe']=$_POST['sexe']; $_SESSION['monfichier']=$_POST['monfichier']; $_SESSION['nais_expression1']=$_POST['expression1']; $_SESSION['nais_jour1']=$_POST['jour1']; $_SESSION['nais_mois1']=$_POST['mois1']; $_SESSION['nais_an1']=$_POST['an1'];
3° script (insertion dans la base) : ci-dessus 1° post.
Merci.
loupix57
Messages postés
316
Date d'inscription
mercredi 20 mars 2013
Statut
Membre
Dernière intervention
1 juin 2015
14
Modifié par loupix57 le 6/05/2013 à 19:52
Modifié par loupix57 le 6/05/2013 à 19:52
Alors, oui je crois avoir trouver ton problème ;
C'est l'upload de fichier :
notamment
<tr><td><input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
<input type="file" name="monfichier" size="51" /></td></tr><p>
C'est pas très jolis ...
L'idéal c'est de faire un second formulaire avec l'upload de ton image.
Essaye d'abord de supprimer ces lignes d'upload de ficher ;
(Juste pour tester expression1, jour1, etc .. et tout ce qu'il suit qui n'a pas été enregistrer en $_SESSION).
C'est l'upload de fichier :
notamment
<tr><td><input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
<input type="file" name="monfichier" size="51" /></td></tr><p>
C'est pas très jolis ...
L'idéal c'est de faire un second formulaire avec l'upload de ton image.
Essaye d'abord de supprimer ces lignes d'upload de ficher ;
(Juste pour tester expression1, jour1, etc .. et tout ce qu'il suit qui n'a pas été enregistrer en $_SESSION).
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
6 mai 2013 à 20:27
6 mai 2013 à 20:27
Salut !
Si le print_r a effectivement affiché toutes tes variables, le problème n'est pas dans la session comme l'a dit loupix
Alors peux tu copier/coller un résultat de print_r($_SESSION) et print_r($_POST) stp
Et sinon Loupix a juste pour le fichier, ce n'est pas comme ca que ca marche. Il y a pas mal de tuto sur le net pour l'upload de fichier, je te conseil donc d'en regardé quelque un :)
Si le print_r a effectivement affiché toutes tes variables, le problème n'est pas dans la session comme l'a dit loupix
Alors peux tu copier/coller un résultat de print_r($_SESSION) et print_r($_POST) stp
Et sinon Loupix a juste pour le fichier, ce n'est pas comme ca que ca marche. Il y a pas mal de tuto sur le net pour l'upload de fichier, je te conseil donc d'en regardé quelque un :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
t671
Messages postés
1440
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
31 octobre 2024
11
Modifié par t671 le 7/05/2013 à 16:29
Modifié par t671 le 7/05/2013 à 16:29
Bonjour et merci.
J'ai testé vos idées, mais rien de mieux.
Par contre, j'ai testé en supprimant le 2° script.
Donc, 1° script, script de saisie :
Puis insertion dans la base :
Là, tout fonctionne !!! Si j'écris "$nais_jour1=$_SESSION['nais_jour1']=$_POST['jour1'];", c'est que pour la suite, c'est plus simple de travailler avec un petit nom de variable ($nais_jour1).
Par contre, si je remet en place le 2° script (pour test) :
Je perds toutes mes variables arrivé dans le 3° script !!!!!
J'ai testé vos idées, mais rien de mieux.
Par contre, j'ai testé en supprimant le 2° script.
Donc, 1° script, script de saisie :
<?php session_start(); $nom = $_SESSION['nom']; $prenom = $_SESSION['prenom']; $famille = $_SESSION['famille']; $sexe = $_SESSION['sexe']; $monfichier = $_SESSION['monfichier']; $nais_expression1 = $_SESSION['expression1']; $nais_jour1 = $_SESSION['jour1']; $nais_mois1 = $_SESSION['mois1']; $nais_an1 = $_SESSION['an1']; ................. ?> <html> ................. <form enctype="multipart/form-data" action="add_indiv.php" method="POST" value="envoyer" name="soumettre"> <tr align="left"><td>Famille :</td> <td width="765"> <SELECT name="famille"> <OPTION VALUE="H ">H</OPTION> <OPTION VALUE="D">D</OPTION> <OPTION VALUE="DA">DA</OPTION> </SELECT></td></tr> <tr align="left"><td><b>NOM : </td><td width="765"><input name="nom" type="text" id="nom" size="55" maxlength="55"></td></tr> <tr align="left"><td>Prénom : </td><td width="765"><input name="prenom" type="text" id="prenom" size="55" maxlength="55"/></td></tr> <tr align="left"><td>Sexe :</td> <td width="765"><SELECT name="sexe"> <OPTION VALUE="M">M</OPTION> <OPTION VALUE="F">F</OPTION> </SELECT></td></tr> <tr><td><input type="hidden" name="MAX_FILE_SIZE" value="2000000" /> <input type="file" name="monfichier" size="51" /></td></tr><p> <td width="200">Date de naissance :</td> <td width="800"> <SELECT name="expression1"> <OPTION VALUE="Vers">Vers</OPTION> <OPTION VALUE="Avant">Avant</OPTION> <OPTION VALUE="Après">Après</OPTION> <OPTION VALUE="Entre">Entre</OPTION> </SELECT> <SELECT name="jour1"> <OPTION VALUE="1">1</OPTION> <OPTION VALUE="2">2</OPTION> <OPTION VALUE="3">3</OPTION> <OPTION VALUE="4">4</OPTION> .................. <SELECT name="mois1"> <OPTION VALUE=""></OPTION> <OPTION VALUE="JAN">JAN</OPTION> <OPTION VALUE="FEB">FEB</OPTION>................. </SELECT> <input name="an1" type="text" id="an1" size="3" maxlength="4"/>
Puis insertion dans la base :
<?php session_start(); $nom=$_SESSION['nom']=$_POST['nom']; $prenom=$_SESSION['prenom']=$_POST['prenom']; $famille=$_SESSION['famille']=$_POST['famille']; $sexe=$_SESSION['sexe']=$_POST['sexe']; $monfichier=$_SESSION['monfichier']=$_POST['monfichier']; $expression1=$_SESSION['expression1']=$_POST['expression1']; $nais_jour1=$_SESSION['nais_jour1']=$_POST['jour1']; $nais_mois1=$_SESSION['nais_mois1']=$_POST['mois1']; $nais_an1=$_SESSION['nais_an1']=$_POST['an1']; ..................
Là, tout fonctionne !!! Si j'écris "$nais_jour1=$_SESSION['nais_jour1']=$_POST['jour1'];", c'est que pour la suite, c'est plus simple de travailler avec un petit nom de variable ($nais_jour1).
Par contre, si je remet en place le 2° script (pour test) :
<?php session_start(); $_SESSION['nom']=$_POST['nom']; $_SESSION['prenom']=$_POST['prenom']; $_SESSION['famille']=$_POST['famille']; $_SESSION['sexe']=$_POST['sexe']; $_SESSION['monfichier']=$_POST['monfichier']; $_SESSION['nais_expression1']=$_POST['expression1']; $_SESSION['nais_jour1']=$_POST['jour1']; $_SESSION['nais_mois1']=$_POST['mois1']; $_SESSION['nais_an1']=$_POST['an1']; <?php $host = 'localhost'; $user = ''; $pass = ''; $db = '; $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); mysql_select_db($db) or die ('Erreur :'.mysql_error()); $nom = $_SESSION['nom']; $prenom = $_SESSION['prenom']; //*** Récupération des personnes pouvant être des doublons à la création *** $select = "SELECT * FROM individus WHERE nom = '%$nom%' AND prenom = '%$prenom%' "; $result = mysql_query ($select); $num_rows = mysql_num_rows($result); if ($num_rows > 0) { .....................
Je perds toutes mes variables arrivé dans le 3° script !!!!!
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
7 mai 2013 à 16:32
7 mai 2013 à 16:32
Est-ce que tu changes de page entre tes scripts ?
t671
Messages postés
1440
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
31 octobre 2024
11
7 mai 2013 à 16:38
7 mai 2013 à 16:38
oui ! Mon 1° script est creat_indiv.php, le 2° est choix_doublon.php, et le 3° est add_indiv.php.
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
7 mai 2013 à 16:39
7 mai 2013 à 16:39
Bah voilà, les variables $_POST ne "passent" pas vers d'autres pages. Elles ne sont valables uniquement sur la page appelé par le action="page.php" du <form>
t671
Messages postés
1440
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
31 octobre 2024
11
7 mai 2013 à 16:43
7 mai 2013 à 16:43
OK !!!
Le plus simple est de mettre le 2° script (pas long) ds le 3° !?
Le plus simple est de mettre le 2° script (pas long) ds le 3° !?
t671
Messages postés
1440
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
31 octobre 2024
11
7 mai 2013 à 17:09
7 mai 2013 à 17:09
Encore une question ....................
Si dans mon 2° script(add_indiv.php) j'écris
Le if ne s'exécute pas alors que $num_rows = 1.
???
Si dans mon 2° script(add_indiv.php) j'écris
$select ='SELECT nom,prenom FROM individus WHERE nom LIKE "%$nom%" AND prenom LIKE "%$prenom%" '; $result = mysql_query ($select); $num_rows = mysql_num_rows($result); if ($num_rows != '0') {..................
Le if ne s'exécute pas alors que $num_rows = 1.
???
loupix57
Messages postés
316
Date d'inscription
mercredi 20 mars 2013
Statut
Membre
Dernière intervention
1 juin 2015
14
7 mai 2013 à 18:10
7 mai 2013 à 18:10
met plutot $num_rows != 0 sans les quotes
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
7 mai 2013 à 18:01
7 mai 2013 à 18:01
Mmh surement que t'as requete n'a pas marché
t671
Messages postés
1440
Date d'inscription
lundi 25 février 2008
Statut
Membre
Dernière intervention
31 octobre 2024
11
7 mai 2013 à 18:18
7 mai 2013 à 18:18
Merci à vous !
En fait j'ai inversé le test :
et là ça fonctionne !
A ++
En fait j'ai inversé le test :
if ($num_rows == 0) { .................. } else ...........
et là ça fonctionne !
A ++