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 :
Pièce jointe 594459Code:
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:
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:
1
2 if(empty($depuis) OR empty($vers) OR empty($montant))
Voici l'affichage de la page "cible app.php" :
Pièce jointe 594460
Quelqu'un a-t-il une idée d'où provient le problème ?
Merci par avance :-)