Modification d'un script d'envoi de formulaire

Eléphant du PHP | 185 Messages

23 déc. 2007, 13:55

Il semblerait que j'ai oublié des "echo" dans la fonction. Essaie ça :
<?php
function redirect ($url, $temps) {
    $temps_ms = $temps * 1000;
?>

    <script type="text/javascript">
        <!--
            function redirect() {
                window.location='<?php echo $url; ?>'
            }
           
            setTimeout('redirect()','<?php echo $temps_ms; ?>');
        -->
    </script>
   
<?php
}
?>

Eléphant du PHP | 355 Messages

23 déc. 2007, 14:01

Parfait ca fonctionne maitenant

Eléphant du PHP | 185 Messages

23 déc. 2007, 14:05

Alors penses à mettre le tag "résolu" sur ce topic... J'en connais quelques uns qui apprécierons ! ;)

Eléphant du PHP | 355 Messages

23 déc. 2007, 14:11

Ben c'est pas totalement résolu, il reste ma deuxième question, pour revenir en arriére dans l'historique

Eléphant du PHP | 185 Messages

23 déc. 2007, 14:24

Je voudrai aussi, si des chan ne sont pas rempli que le message "il y a des champs vide echo merci de remplir les champs nom, prenom'" soit afficher 10 secondes, et aprés c'est 10 seconde que la page revienne en arriérre, est-ce possible ?
C'est de cette question là dont tu veux parler ?

Si oui, alors sans doute faudra-t-il indiquer une autre URL de redirection. A la fin du code tu pourrais avoir ceci :
else{
    echo 'il y a des champs vide echo merci de remplir les champs nom, prenom';
    redirect ($PHP_SELF, 10);
}
Ceci devrait te permettre de recharger la page contenant le formulaire.

Eléphant du PHP | 355 Messages

23 déc. 2007, 14:48

Merci encore ;)

Mais c'est pas une autre url que je veut, c'est revenir en arriére

Eléphant du PHP | 185 Messages

23 déc. 2007, 14:53

Eh bien, tu ne veux pas revenir au formulaire si les champs nom et prenom ne sont pas remplis ?

Eléphant du PHP | 355 Messages

23 déc. 2007, 14:56

Ben si, parce que si la rempli d'autre chan en revenant en arriére il n'aura pas à le reremplire

Eléphant du PHP | 355 Messages

25 déc. 2007, 15:41

Tu sais commenr faire pour revenir en arriére dans l'historique ?

J'ai vu qu'il y a history.back()

je l'ai ajouter comme ceci:

Code : Tout sélectionner

<?php // On récupére le contenu des formulaire dans des variables: $formMail = $_POST['mail']; $formNom = $_POST['nom']; $formPrenom = $_POST['prenom']; $formsociete = $_POST['societe']; $formactivite = $_POST['activite']; $formtelephone = $_POST['telephone']; $formCommentaire = $_POST['commentaire']; // On inclut le fichier contenant la fonction de redirection include ("redirection.php"); // On définit l'URL de redirection if ($_SERVER['HTTP_REFERER']) { $url_redirect = $_SERVER['HTTP_REFERER']; } else { $url_redirect = "formulaire.htm"; } if(!empty($formPrenom) && !empty($formNom) ){ $formCommentaire = htmlentities($formCommentaire); // On créer une unique variable contenant toutes les autres varaible du formulaire: $message = "$formNom $formPrenom vous contact via votre formulaire.\n \n Société: $formsociete \n Activité: $formactivite \n Telep $formtelephone \n Mail: $formMail \n \n message : \n $formCommentaire"; if( mail('[email protected]','Contact via formulaire ART ANIM',$message) && mail('[email protected]','Contact via formulaire ART ANIM',$message) ){ echo 'les informations on bien été envoyé!'; redirect($url_redirect, 3); // On effectue la redirection en fonction de l'url passée en argument et du temps (ici 10 micro-secondes) } else{ echo 'une erreur est survenu lors de l\'envoi du message'; redirect($url_redirect, 3); // Même méthode lorsqu'un autre message apparaît } } else{ echo 'il y a des champs vide echo merci de remplir les champs nom, prenom'; history.back() // Encore pareil... ;) } ?>
Mais ca ne marche pas, ca me renvoi une erreur

Eléphant du PHP | 355 Messages

06 janv. 2008, 13:13

Personne ne peut m'aider ?