IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Direction page erreur [Fait]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 328
    Points : 85
    Points
    85
    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 : 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
    <?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

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 415
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 415
    Points : 15 784
    Points
    15 784
    Par défaut
    pour faire la redirection, utilise la fonction http://php.net/header comme expliqué là :
    http://php.developpez.com/faq/?page=...ts_redirection

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 328
    Points : 85
    Points
    85
    Par défaut
    Ok merci bien , mais comment faire pour faire prolongé un peut l'affichage de la page d'erreur ?

    Header("..../erreur.hmtl")';
    ?
    Header("..../demandinvitation.hmtl")';

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    sleep, si j'ai bien compris ?

  5. #5
    Membre averti Avatar de icer
    Inscrit en
    Janvier 2006
    Messages
    332
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 332
    Points : 363
    Points
    363
    Par défaut
    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...

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 328
    Points : 85
    Points
    85
    Par défaut
    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 : 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
    <?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

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Vous ne pourrez pas rediriger ( header("Location: ...."); ) sur deux pages en même temps

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    328
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 328
    Points : 85
    Points
    85
    Par défaut
    Oky donc la solution est de mettre un header dans la seconde page pour revenir à la premiere

Discussions similaires

  1. Réponses: 0
    Dernier message: 19/05/2011, 13h34
  2. Redirection page erreur
    Par mihaestii dans le forum JSF
    Réponses: 17
    Dernier message: 16/07/2007, 08h48
  3. Réponses: 6
    Dernier message: 08/10/2006, 16h49
  4. [Directives] Page blanche quand erreur de syntaxe
    Par syl2095 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 12
    Dernier message: 17/02/2006, 15h15
  5. affichage page erreur suite exception
    Par pram dans le forum XMLRAD
    Réponses: 1
    Dernier message: 20/09/2005, 17h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo