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 :

problème de validation d'un formulaire avec une fonction


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 241
    Points : 89
    Points
    89
    Par défaut problème de validation d'un formulaire avec une fonction
    Bonjour,

    J’ai un formulaire que j’aimerais valider via une fonction Contrôle($tableau) en vue d’afficher des msg pour des saisis manquants.

    Ma fonction se présente comme suit :

    function Controle($tableau)
    {
    $message = "";
    // On vérifie que les champs importants ont été saisis
    if(empty($tabeau['titre']))
    $message .= "Vous devez saisir votre titre<br />";
    if(empty($tabeau['nom']))
    $message .= "Vous devez saisir votre nom<br />";

    return $message

    }

    et dans la page ou il y a le formulaire, je fais ceci :
    < ?php
    require_once("fonctions.php" )

    $msg = Controle($_POST) ;

    if ($msg)//NB: voir en bas
    {//il ya des champs obligatoires qui n’ont pas été remplis
    if(isset($_POST[‘envoyer’]))//pour ne pas afficher des msg pour la première fois
    {
    echo "Les champs avec * sont obligatoires<br />";
    echo $msg ;
    }

    ?>

    //mon formulaire est ici avec method="post" action="<?php echo //$_SERVER['PHP_SELF'];?>" enctype="multipart/form-data"


    < ?php }
    else

    {
    echo "Votre formulaire a été envoyé";
    }
    ?>

    NB : alors que lorsque je remplace le test par différentes test ça marche, du genre if (empty($_POST[‘titre’]) || empty($_[‘nom’]))

  2. #2
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Et c'est quoi au juste le problème :
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

  3. #3
    Membre averti Avatar de gofono_bass
    Inscrit en
    Décembre 2005
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Décembre 2005
    Messages : 383
    Points : 448
    Points
    448
    Par défaut
    Salut,
    déjà je ne sais pas si c'est juste une faute de frappe mais dans ta fonction, t'as $tabeau au lieu de $tableau...
    ensuite, si tu pouvais nous expliquer c'est quoi le probleme pour qu'on puisse vraiment lire ton code...
    mais pourquoi tu cours?

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 241
    Points : 89
    Points
    89
    Par défaut
    le problème c'est que lorsque j'utilise cette fonction controle($tableau) et que j'ai rempli les champs obligatoires (titre,nom), je n'ai toujours pas accès à la ligne "Votre formulaire a été envoyé"

    j'ai toujours le formulaire devant mes yeux me disant de remplir les champs.

    fk04

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 241
    Points : 89
    Points
    89
    Par défaut
    non peut-être que j'ai fait des erreurs en tapant mais je pense que j'ai une erreur de logique.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 241
    Points : 89
    Points
    89
    Par défaut
    BRAVO

    tu as vu juste c'était une erreur dans ma fonction..($tabeau)

    desolée pour le derangement mais j'ai failli deprimé dessus 8)

    Merci et continuez à nous aider

    fk04

  7. #7
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

    Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)

Discussions similaires

  1. [PHP 5.0] Sécuriser un formulaire avec une fonction dans une boucle ?
    Par renaud26 dans le forum Langage
    Réponses: 7
    Dernier message: 21/01/2010, 18h42
  2. [AJAX] valider un formulaire avec une fonction ajax
    Par freums dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 18/02/2008, 11h34
  3. Réponses: 2
    Dernier message: 04/07/2007, 17h10
  4. [AJAX] Envoi ou non d'un formulaire avec une fonction AJAX
    Par ohhh.gringo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 16/05/2007, 11h47
  5. Réponses: 7
    Dernier message: 07/09/2006, 15h17

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