Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/06/2007, 11h40   #1
Membre du Club
 
Inscription : novembre 2003
Messages : 318
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 318
Points : 48
Points : 48
Par défaut Direction page erreur

Bonjour, je cherche à faire un formulaire de demande d'invitation pour un salon sur le site http://www.isatis-electronique.fr.

J'ai un petit probléme concernant l'affichage d'une page d'erreur suite à un champ obligatoire non renseigné, j'aimerai que si il voit une box manquante il m'affiche une page indiquant à l'utilisateur qu'il a oublié quelque chose et que ça revienne à la page de départ pour qu'il finnissent de taper ses infos

je travail en php et je ne veut pas de java,

mon script php est :

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
<?php
 
$societe = $_POST['societe'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$Adrpsotale = $_POST['Adrpsotale'];
$email= $_POST['email'];
$CodePostal = $_POST['CodePostal'];
$ville = $_POST['ville'];
$nom = $_POST['tel'];
 
if(empty($societe) .....)
	{
	Voilà c'est la que je sais pas comment faire, un http-equiv="refresh" content="10 ? ou quoi un truc du style echo '<url=http://www.isatis-electronique.fr/champnonremplis.htm" />'; en gros je veux afficher champnon remplis.htm puis revenir à mon demandinvit.htm
	exit();
	}
	else
		{
		$TO = "marketing@aet-technologies.fr";
		$h  = "From: " . $TO;
		$message = "";
		while (list($key, $val) = each($HTTP_POST_VARS)) 
				{
				$message .= "$key : $val\n";
				}
		mail($TO, $sujet, $message, $h);
		Header("Location: http://www.isatis-electronique.fr/accuse.htm");
		}
 
?>
Merci d'avance à tous

Jim/Myogtha
Myogtha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 12h20   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
pour faire la redirection, utilise la fonction http://php.net/header comme expliqué là :
http://php.developpez.com/faq/?page=...ts_redirection
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 13h10   #3
Membre du Club
 
Inscription : novembre 2003
Messages : 318
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 318
Points : 48
Points : 48
Ok merci bien , mais comment faire pour faire prolongé un peut l'affichage de la page d'erreur ?

Header("..../erreur.hmtl")';
?
Header("..../demandinvitation.hmtl")';
Myogtha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 19h37   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
sleep, si j'ai bien compris ?
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/06/2007, 20h06   #5
Membre éclairé
 
Avatar de icer
 
Inscription : janvier 2006
Messages : 332
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 332
Points : 308
Points : 308
Tu laisse ton utilisateur lire les messages d'erreurs, et le soin de 'prolonger'. Il a bien un petit index pour faire clic !

Tu peux réafficher le formulaire en indiquant les erreurs sur la même page. Et aussi de remplir les champs que ton utilisateur à déja remplit. Il n'y a rien de plus énervant de taper 300 fois la même chose...
icer est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2007, 08h38   #6
Membre du Club
 
Inscription : novembre 2003
Messages : 318
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 318
Points : 48
Points : 48
J'ai du zapper un truc avec le sleep parce que c'est bien plus ou moins ce que je voudrais mais ça fait pourtant pas la chose, il affiche que le deuxieme header et en plus il me zappe mes infos dejà rentré, je vous file le code au cas ou :

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
<?php
$societe = $_POST['societe'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$Adrpsotale = $_POST['Adrpsotale'];
$email= $_POST['email'];
$CodePostal = $_POST['CodePostal'];
$ville = $_POST['ville'];
$nom = $_POST['tel'];
 
if(empty($societe)......)
	{
	Header("Location: http://www.isatis-electronique.fr/champnonremplis.htm");
	sleep(5);	
	Header("Location: http://www.isatis-electronique.fr/invitationFE2007.htm");
	exit();
	}
	else
		{
		$TO = "......@aet-technologies.fr";
		$h  = "From: " . $TO;
		$message = "";
		while (list($key, $val) = each($HTTP_POST_VARS)) 
				{
				$message .= "$key : $val\n";
				}
		mail($TO, $sujet, $message, $h);
		Header("Location: http://www.isatis-electronique.fr/accuse.htm");
		}
?>
merci d'avance, sinon je vais essayer en parallèle de mettre un bouton mais je voudrais éviter
Myogtha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2007, 16h47   #7
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Vous ne pourrez pas rediriger ( header("Location: ...."); ) sur deux pages en même temps
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2007, 09h58   #8
Membre du Club
 
Inscription : novembre 2003
Messages : 318
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 318
Points : 48
Points : 48
Oky donc la solution est de mettre un header dans la seconde page pour revenir à la premiere
Myogtha est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h37.


 
 
 
 
Partenaires

Hébergement Web