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 :

[Tableaux] Probleme pour afficher message.


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 17
    Points
    17
    Par défaut [Tableaux] Probleme pour afficher message.
    Salut à tous.

    J'ai un petit soucis pour faire affiché un message. Je m'explique:

    Sur une page j'ai un formulaire, quand je fait "envoyé", j'ai un script qui verifie si certain champ sont vide ou pas. Quand un champ est vide, il me renvoi au formulaire (voici le code qui me renvoi au formulaire):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (empty($bla))
    {
    header ('location: ../index.php?page=formulaire');
    }
    Cette partie fonctionne bien. Mais j'aimerai en plus d'etre renvoyé au formulaire que ca m'affiche un message (juste au dessus du formulaire) du style (le champ X est vide, veuillez remplir tout les champs obligatoire...).
    J'ai essayé de modifié le code comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if (empty($bla))
    {
    header ('location: ../index.php?page=formulaire');
    echo 'le champ X est vide, veuillez  remplir tout les champs obligatoire...';
    }
    Mais rien ne s'affiche.

    Si vous pouviez m'aider.

    MErci

  2. #2
    Membre confirmé Avatar de GregPeck
    Inscrit en
    Novembre 2005
    Messages
    530
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 530
    Points : 540
    Points
    540
    Par défaut
    On ne peux rien mettre après un header location puisque l'éxécution s'arrette là. La solution pour toi est de faire ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (empty($bla))
    {
    header ('location: ../index.php?page=formulaire&erreur=1');
    }
    Et dans ta page de formulaire tu fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if ($_GET['erreur']==1) {
      echo "Tous les champs doivent être remplis";
    }

  3. #3
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    logique, le message ne doit pas etre affiché a ce moment mais sur la page ou tu renvois le client !

    utilise un index pour choisir le message a afficher qui seront prealablement stockés dans un tableau.

    ex :
    if (empty($bla))
    {
    header ('location: ../index.php?page=formulaire&numError=3');
    die();
    }

    et sur la page de destination :
    $tbErreur = array(
    "1er message',
    "2eme message',
    "3eme message'
    );
    echo $tbErreur[$_GET['numError']];

    pense juste a verifier la presence de $_GET['numError'] avec un isset avant.
    Le plus grand arbre est né d'une graine menue, une tour de neuf étages est partie d'une poignée de terre.
    Mon blog : http://web.codeur.free.fr

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 17
    Points
    17
    Par défaut
    Merci bien à tout les 2.

    Par contre Lorenzo77, j'ai un soucis, quand je vais sur ma page: index.php?page=formulaire , j'ai un message qui s'affiche:
    Notice: Undefined index: erreur in ......

    J'ai essayé de verifier la presence de $_GET['numError'] avec isset, comme tu me l'as dit. Voici le code, peut etre j'ai fait une erreur de frappe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    if (isset($_GET['numError']); {
    $tbErreur = array(
    "1er message',
    "2eme message',
    "3eme message'
    );
    echo $tbErreur[$_GET['numError']];
    }
    Else {
    echo 'blablablablabla'}

  5. #5
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    tu fais un ECHO que si la page recoit bien un "index d'erreur" ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $tbErreur = array(
    "1er message',
    "2eme message',
    "3eme message'
    );
     
    if( isset($_GET['numError']) ){
        echo $tbErreur[$_GET['numError']];
    }
    Le plus grand arbre est né d'une graine menue, une tour de neuf étages est partie d'une poignée de terre.
    Mon blog : http://web.codeur.free.fr

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Points : 17
    Points
    17
    Par défaut
    Nickel ca marche.
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JTable] Probleme pour afficher la mise à jour du modèle
    Par Yannick_from_31 dans le forum Composants
    Réponses: 2
    Dernier message: 02/06/2006, 19h10
  2. Probleme pour afficher des printf dans le main
    Par Battosaiii dans le forum C
    Réponses: 4
    Dernier message: 13/03/2006, 10h58
  3. Réponses: 9
    Dernier message: 17/02/2006, 11h04
  4. [LG] Problème pour afficher une matrice
    Par phoebee dans le forum Langage
    Réponses: 4
    Dernier message: 11/08/2005, 21h41
  5. Problème pour afficher un format date dd/MM/yy HH:mm
    Par indy3 dans le forum Hibernate
    Réponses: 5
    Dernier message: 29/03/2005, 10h45

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