PHP Verif avant envoi d'un post

Fermé
Elfe - 17 juil. 2004 à 01:30
 Elfe - 18 juil. 2004 à 01:03
Bonjour.
Je voulais savoir s'il était possible de lancer une recherche sql avant l'envoi des variable contenue dans $_POST quand on valide un formulaire en php?

Merci de me répondre ... ca m'aiderai grandement :)
Elfe

4 réponses

ShaoShiva Messages postés 106 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 25 janvier 2005 18
17 juil. 2004 à 07:45
PHP est interprété coté serveur, donc tu es obligé de valider ton formulaire, pour qu'ensuite la page qui reçoit le formulaire puisse faire ta recherche sql.
0
Ok merci...
Mon problème c'est que j'essaie de creer un upload sur mon site , et je voulais verifier que l'utilisateur n'avait pas uploadé de fichiers dpuis un certain temps..paske sans cette vérification, et comme les fichiers sont un peu volumineux , il est possible de lancer un autre upload grace au même formulaire avant que les variables contenues dans le $_POST soient envoyées.... ca ne m'arrange pas :(
Je sais pas si g été clair ...
Si tu connaissait une solution ca serait cool :)
De toute facon merci pour ta réponse
0
ShaoShiva Messages postés 106 Date d'inscription mercredi 26 mai 2004 Statut Membre Dernière intervention 25 janvier 2005 18
17 juil. 2004 à 21:40
Fais un système avec cookie et ip. Quand l'utilisateur va sur la page avec le formulaire pour uploader, tu place son ip dans un fichier (ou une base de donnée). Et en même temps tu vérifie si elle n'y est pas déja inscrite. Si l'ip est inscrite c'est qu'il s'est déja loggué sur cette page et donc tu le redirige, sinon tu inscris l'ip dans la bdd ou dans le fichier.

Et enfin, quand le fichier a été uploadé, sur la page cible du formulaire tu enlève ce cookie et tu retire son ip de la base de donnée.
0
Oui c'est une idée.... je vais regarder de ce coté. Mais je sais pas si ca va fonctionner. En fait pour le moment voici ce que je faisait:
-ouverture de la page contenant le formulaire(ce formulaire ne s'affiche que si lutilisateur n'a pas downlodé depuis au moins 6h)
- si l'utilisateur peut entrer qqc, on envoie tout ca au script devant traiter l'information.
- le script verifie extension et companie puis après avoir déplacé le fichier temporaire vers son repertoire final, j'entre l'ip et l'heure dans une bdd, puis redirection vers la page du formulaire(formulaire qui ne s'affiche pas puisqu'il y a eu un upload)

le problème c'est qu'avant que le script du formulaire ne s'exécute, il faut que les variable de POST soietn envoyées... enfin il me semble...
Donc avant même que le script traitant le formulaire ne se lance on a le temps de relancer un upload grace au même formulaire. on a donc deux upload en même temps!!

En fait tant que que la variable POST du premier upload n'a pas été envoyée, il est possible de lancer d'autres uploads (et encore pour le moment je travaille en local donc ca va laisser encore plus de temps en ligne :( )

Encore une fois j'espere etre clair :-s
0
Oui c'est une idée.... je vais regarder de ce coté. Mais je sais pas si ca va fonctionner. En fait pour le moment voici ce que je faisait:
-ouverture de la page contenant le formulaire(ce formulaire ne s'affiche que si lutilisateur n'a pas downlodé depuis au moins 6h)
- si l'utilisateur peut entrer qqc, on envoie tout ca au script devant traiter l'information.
- le script verifie extension et companie puis après avoir déplacé le fichier temporaire vers son repertoire final, j'entre l'ip et l'heure dans une bdd, puis redirection vers la page du formulaire(formulaire qui ne s'affiche pas puisqu'il y a eu un upload)

le problème c'est qu'avant que le script du formulaire ne s'exécute, il faut que les variable de POST soietn envoyées... enfin il me semble...
Donc avant même que le script traitant le formulaire ne se lance on a le temps de relancer un upload grace au même formulaire. on a donc deux upload en même temps!!

En fait tant que que la variable POST du premier upload n'a pas été envoyée, il est possible de lancer d'autres uploads (et encore pour le moment je travaille en local donc ca va laisser encore plus de temps en ligne :( )

Encore une fois j'espere etre clair :-s
0