Page 1 sur 1

Vérification formulaire / transfert des données

Posté : 27 févr. 2013, 13:32
par Breathe
Bonjour,

J'ai un formulaire sur ma page index.php et je voudrais vérifier les champs de ce formulaire sur cette même page je fais donc dans le form action="index.php".
Ainsi au début de ma page index.php je vérifie les champs grâce à des isset() et empty(), bref jusque là tout va bien mais voilà : Si les champs sont mal renseignés je reste sur la même page (index.php) mais si ils sont bien renseignés je fais un header() qui me transfert sur une autre page (calcul.php) qui elle va traiter les données et afficher les résultat or comme le formulaire m'a renvoyé sur index.php pour la vérification les données ne peuvent pas arriver sur calcul.php.
Donc ma question est la suivante : comment faire passer les données de index.php après la soumission du formulaire et la vérification des données ?

J'ai essayer de faire un dessin dans le cas ou je ne serai pas très clair ... :?

Image

Re: Vérification formulaire / transfert des données

Posté : 27 févr. 2013, 19:20
par damien_55
Je ne comprends pas ce que tu veux faire ??

Tu peux trés bien vérifier les infos sur ta page index.php et aprés soit les envoyer dans un base soit les transmettre dans une autre page en utlisant par exemple la methode GET de ton formulaire ou POST.

si tu veux transmettre tes infos a une autre page, il faut que tu mette une action dans ton form avec la page visée.

Donc

action="calcul.php", la vérification se fait par une série de condition par exemple.

Et si ces conditions sont remplis alors le formulaire est envoyé.

Il me semble que le header sert juste a rediriger vers une page aprés l'éxécution et pas à "traiter tes données".

Donc en mettant action=index.php

1- tu tournes en boucle sur ta page index
2- tes données ne sont pas envoyées à calcul.php puisqu'elles ne sont pas transmises (GET ou POST).
3- tu es tout simplement redirigé vers la page calcul.php aprés avoir soumis ton form.

Re: Vérification formulaire / transfert des données

Posté : 27 févr. 2013, 21:44
par Breathe
Je reprends ^^

Mon formulaire qui a pour entête <FORM METHOD=POST ACTION="index.php"> envoie les données sur index.php (la même page que le formulaire donc). Ça c'est bon c'est ce que je veux c'est à dire que ce soit la page du formulaire qui vérifier les champs du formulaire.
Mais ensuite ces données une fois qu'elles sont vérifiées, que c'est bon l'utilisateur a tout rempli comme je voulais, j'aimerai qu'elles soient envoyé à la page calcul.php pour y faire des calculs dessus justement parce que je veux que la phase de vérification (les champs sont remplis correctement) soit séparée de la phase traitement (j'utilise les données pour faire des calculs mathématiques).t
Donc index.php l'utilisateur rempli le formulaire et l'envoi, la réception se fait par index.php qui vérifie que les champs sont correctement rentrés.
Et calcul.php reçoit les données de index.php une fois qu'elles sont vérifiées et fait des calculs dessus.

Le problème est que je ne sait pas comment transférer les données de index.php à calcul.php puisque la seule méthode que je connaisse et l'envoi par formulaire.

Je sais pas si c'est très clair ce que je dis ...

Re: Vérification formulaire / transfert des données

Posté : 27 févr. 2013, 22:14
par damien_55
je crois savoir ce que tu veux faire, tu veux vérifier ton formulaire avant l'envoi vers calcul.php.

En PHP, il me semble que ce n'est pas possible.

a) Avant l'envoi du formulaire La vérification avant envoi ne peut se faire en PHP, PHP étant un langage serveur, elle devra donc être faite à l'aide d'un langage client, généralement JavaScript.

un peu de doc la dessus

http://php.developpez.com/faq/langage/?page=formulaires

Re: Vérification formulaire / transfert des données

Posté : 27 févr. 2013, 23:05
par Breathe
Non ça n'est pas ça que je veux faire, si je voulais faire cela j'utiliserai javascript.

Ce que je veux c'est :

étape 1 l'utilisateur rempli le formulaire
étape 2 le formulaire est envoyé via la méthode post à index.php (donc toujours la même page)
étape 3 les $_POST sont vérifier (isset(), empty() ...)
étape 4 Si les $_POST sont correct je voudrais envoyé les valeur quelle contient a calcul.php

C'est l'étape 4 qui coince car je ne sait pas transférer des données sans utiliser un formulaire.

Re: Vérification formulaire / transfert des données

Posté : 01 mars 2013, 10:54
par Breathe
Peut-être qu'avec du code ça serait plus facile :

Code : Tout sélectionner

<?php if(isset($_POST["ameliorer"]) && !empty($_POST["ameliorer"])) ************* rediriger vers calcul.php en lui envoyant les données contenues dans $_POST["ameliorer"] pour qu'on puisse faire des calculs desssus ********* else {?> <!DOCTYPE html> <html> <head> <title>Remplissez le fomulaire</title> </head> <body> <form method="post" action="index.php"> <textarea name="ameliorer" ></textarea> </form> </body> </html> <?php } ?>
Voilà c'est la partie que j'ai mise entre *** bla *** que je ne sais pas faire.

Re: Vérification formulaire / transfert des données

Posté : 01 mars 2013, 12:10
par damien_55
En gros, c'est de la soumission automatique si les conditions sont remplies.

2 solutions sont possibles
- JS avec une fonction et un body onload=() par exemple
- CURL dont voici la doc http://www.seoblackout.com/2008/02/13/s ... ormulaire/

Trouvé en 2 min sur gg.

Reste plus que ça te convienne et à essayer