Bonjour,
Existe-t-il une fonction php me permettant de faire un retour vers une page (d'après son url) après x seconde ?
Merci pour votre.
Cordialement,
thannane
Bonjour,
Existe-t-il une fonction php me permettant de faire un retour vers une page (d'après son url) après x seconde ?
Merci pour votre.
Cordialement,
thannane
Bonjour,
tu peux utiliser une balise META dans les balises <head> de a page (c'est du HTML), comme ceci :
qui va te rediriger vers url.php au bout de 3 secondes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <meta http-equiv="refresh" content="3;url.php" />
Il y a probablement moyen de simuler le header en PHP avec la fonction header().
@+
Merci pour cette rapide réponse mais mon probleme est un peu plus compliqué :
J'ai un formulaire qui va remplir ma base de données :
Dans le cas où un champ est mal remplit, je voudrai que le visiteur soit automatiquement redirigé vers la page précédente (pour y retrouver ce qu'il a déjà saisi dans le formulaire) après mettons, 3 secondes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 // Connexion au serveur mysql $connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD) or die('Impossible de se connecter : ' . mysql_error()); // sélection de la base de données mysql_select_db(DB_DATABASE, $connect); $msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis :<br/><br/>"; $msg_ok = "<center />Merci ! <br/>Votre demande a bien été prise en compte. </center />"; $message = $msg_erreur;
Dans le cas ou tous les champs sont correctement remplis, on affiche un message de remerciements et, ensuite, je voudrai que le visiteur soit automatiquement redirigé après, disons, 3 secondes vers la page d'accueil.
Est-ce PHP permet de faire ça ? J'espère avoir été clair dans l'énnonce du problème et encore merci pour les réponses.
Cordialement,
thannane
remercier et l'envoyer sur l'accueil ça posera pas de problèmes
par contre, l'envoyer sur la page précédente et que les champs qui s'y trouvent soient remplis avec les données qu'il avait saisi...
te complique pas la vie
gère l'affichage du formulaire, sa vérification et le traitement des données dans la même page
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 si (formulaire jamais validé) afficher formulaire vide sinon vérifier formulaire si (données ok) traitement sinon afficher formulaire avec données saisies et message explicatif
voici le code entier de la page add_form.php
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77 <meta http-equiv="content-type" content="text/html;charset=iso-8859-1"> <csactions> <csaction name="fd5a2ed0" class="Goto Link" type="onevent" val0="../index.html" val1="" urlparams="1"></csaction> </csactions> <?php // Parametres mysql define('DB_SERVER', 'localhost'); // serveur mysql define('DB_SERVER_USERNAME', 'xxxxxxx); // nom d'utilisateur define('DB_SERVER_PASSWORD', 'xxxxxx'); // mot de passe define('DB_DATABASE', 'xxxxxx); // nom de la base // Connexion au serveur mysql $connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD) or die('Impossible de se connecter : ' . mysql_error()); // sélection de la base de données mysql_select_db(DB_DATABASE, $connect); $msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis :<br/><br/>"; $msg_ok = "<center />Merci ! <br/>Votre demande a bien été prise en compte. </center />"; $message = $msg_erreur; // vérification des champs if (empty($_POST['civilite'])) $message .= "Votre civilité<br/>"; if (empty($_POST['nom'])) $message .= "Votre nom<br/>"; if (empty($_POST['codepostal'])) $message .= "Votre code postal<br/>"; if (empty($_POST['ville'])) $message .= "Votre ville<br/>"; if (empty($_POST['mail'])) $message .= "Votre E-mail<br/>"; if (empty($_POST['newsletter'])) $message .= "Voulez-vous vous inscrire à notre lettre ?<br/>"; if (empty($_POST['comments'])) $message .= "Votre message<br/>"; // si un champ est vide, on affiche le message d'erreur if (strlen($message) > strlen($msg_erreur)) { echo $message; // sinon c'est ok } else { foreach($_POST as $index => $valeur) { $$index = mysql_real_escape_string(trim($valeur)); } $interets = $_POST['interets']; $sqlinterets = ''; for ($i=0; $i<count($interets); $i++) { $sqlinterets .= $interets[$i]; $sqlinterets .= ', '; } $sql = "INSERT INTO info_formulaire VALUES ('', '$civilite', '$nom', '$codepostal', '$ville', '$mail', '$pays', '$newsletter', '$sqlinterets', '$comments', now())"; $res = mysql_query($sql); if ($res) { echo $msg_ok; } else { echo mysql_error(); } } ?>
Est-ce qu'on est sur la bonne voie comme ca ?
Actuellement, il faut manuellement retourner en arrière dans les deux cas (champ manquant et/ou page de remerciement)
Dans quel sens dois-je réfléchir pour faire en sorte de rediriger après x seconde le visiteur après l'affichage de la page de remerciements ?
Cordialement,
thannane
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager