Bonjour à tous !
Débutant en PHP et HTML, j'ai crée un formulaire dans la page "indexapp.php" me permettant de renseigner des mouvements financiers :
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 <form method="post" action="cibleapp.php"> <p> Veuillez saisir les informations : </p> <form action="cible.php" method="post"> <p> DEPUIS LE COMPTE : <br /> <select name="depuis"> <option value="courant">Compte Courant</option> <option value="ldd">Livret Developpement Durable</option> <option value="lmjo">Livret Jeune Mozaic</option> </select> <br /> <br /> VERS LE COMPTE : <br /> <select name="vers"> <option value="courant">Compte Courant</option> <option value="ldd">Livret Developpement Durable</option> <option value="lmjo">Livret Jeune Mozaic</option> <option value="pel">Plan Epargne Logement</option> <option value="pea_liq">PEA Poche Liquide</option> </select> <br /> <br /> MONTANT : <br /> <input type="text" name="montant" /> </select> <input type="submit" value="Valider" /> </p> </form> </form>
Je récupère les informations dans la page cible "cibleapp.php" dont voici le code :
PS : Ce code a été honteusement pompé sur un site de tuto, et modifié pour coller à mon cas.
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
43
44
45
46
47
48
49
50
51 <p>Bonjour !</p> <P> Voici les informations saisies : </P> <p>Depuis le compte : <?php echo $_POST['depuis']; ?> </p> <p>Vers le compte : <?php echo $_POST['vers']; ?> </p> <p>Montant : <?php echo $_POST['montant']; ?> </p> <?php // On commence par récupérer les champs if(isset($_POST['depuis'])) $nom=$_POST['depuis']; else $depuis=""; if(isset($_POST['vers'])) $prenom=$_POST['vers']; else $vers=""; if(isset($_POST['montant'])) $email=$_POST['montant']; else $montant=""; // On vérifie si les champs sont vides if(empty($depuis) OR empty($vers) OR empty($montant)) { echo '<font color="red">Attention, aucun champ ne doit etre vide !</font>'; } // Aucun champ n'est vide, on peut enregistrer dans la table else { // connexion à la base $db = mysql_connect('localhost', 'root', 'monmotdepasse') or die('Erreur de connexion '.mysql_error()); // sélection de la base mysql_select_db('DB_wordpress',$db) or die('Erreur de selection '.mysql_error()); // on écrit la requête sql $sql = "INSERT INTO wp_perso_mouvement(id_mouvement, depuis, vers, montant) VALUES('','$depuis','$vers','$montant')"; // on insère les informations du formulaire dans la table mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); // on affiche le résultat pour le visiteur echo 'Vos infos on été ajoutées.'; mysql_close(); // on ferme la connexion } ?> <p> <a href=" indexapp.php ">Retour au formulaire</a> </p>
Le problème, c'est que la page cible affiche bien les informations saisies. Les informations transitent donc bien via les variables $_POST[....]
En revanche, dans le code php chargé d'insérer ces données dans la table d'une base MySQL, il considère les variables comme vide. En effet, c'est le
qui s'applique et pas le "else".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if(empty($depuis) OR empty($vers) OR empty($montant))
Voici l'affichage de la page "cible app.php" :
Quelqu'un a-t-il une idée d'où provient le problème ?
Merci par avance :-)
Partager