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 :

vérification de formulaire en php


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 104
    Par défaut vérification de formulaire en php
    Voilà je cherche à faire une vérification des champs de mon formulaire en php.
    Sur une page j'ai mon formulaire qui est envoyée à une autre page qui doit vérifier si les champs saisis sont corrects et après qui intègre les données dans la base de données.

    si le champs est mal renseigné je souhaite que k'internaute puisse être redirigé vers le formulaire et qu'un message d'erreur en face du champ mal renseigné apparaisse.

    Mon niveau en php n'est pas assez bon pour trouver la solution c'est pour cela que je fais appel à vos lumières

    voici mon formulaire

    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
     
    <form id="actualité" name="agenda" method="get" action="do_ajout_actu.php">
     
    			<table align="center">
    	<tr>
    	  <td class="titre_formulaire">Titre de l'actualit&eacute; : </td>
    	  <td><input class="titre_formulaire" name="titre" type="text" id="titre" /></td></tr><tr><td class="titre_formulaire">Contenu:</td></tr></table>
      <?php
    // Automatically calculates the editor base path based on the _samples directory.
    // This is usefull only for these samples. A real application should use something like this:
     
    $sBasePath = '../../fckeditor/';
     
    $FCKobj = new FCKeditor('FCKeditor1');
    $FCKobj->BasePath = $sBasePath;
    $FCKobj->Width  = '60%' ;
    $FCKobj->Height = '300' ;
    $FCKobj->Value = '';
    $FCKobj->Create();
    $maDate = date("Y,m,d");
     
    ?>
      <br />
      <br />
      <input type="hidden" name="date_pub" value="<? echo $maDate; ?>"/>
      <input class="textes1" type="submit" name="Submit" value="Ajouter l'actualit&eacute;" />
    </form>
    et ma page qui gere le controle et l'inseriton des données

    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
     
    function ajouteruneactualite( $titre, $contenu , $date_pub){
    	$cnx = mysql_connect("localhost","root","");
    	$db = mysql_select_db("clown");
     
    	//récupération des valeurs des champs:
    	//titre:
    	$titre = $_REQUEST["titre"] ;
    	//contenu:
    	$contenu = mysql_real_escape_string($_REQUEST["FCKeditor1"]) ;
    	//date_publication
    	$date_pub=$_REQUEST["date_pub"];
     
    	if(!isset($titre) || $titre=="") 
    	{ 
    	$erreur='Vous devez renseigner le titre de l\'actualité';
    	} 
     
     
     
     
    		$sql="INSERT into actus (id, titre, contenu, date_pub) VALUES ('','$titre', '$contenu', '$date_pub')";
     
    	//exécution de la requête SQL:
    	$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
    	//affichage des résultats, pour savoir si l'ajout a marché:
      if($requete)
      {
     
      	echo '<p class="titre_formulaire">';
        echo("L'actualité : ");
    	echo'<b><u>'.$titre.'</u></b>';
    	echo (" a été correctement ajoutée") ;
    	echo '</p>';
     
     
      }
      else
      {
        echo '<p class="titre_formulaire">';
        echo("L'ajout de l'actualité : ");
    	echo'<b><u>'.$titre.'</u></b>';
    	echo (" a échoué") ;
    	echo '</p>';
     
      }
     
    }

  2. #2
    Membre éprouvé Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Par défaut
    Salut,

    Ton niveau n'est pas assez bon et tu utilises tout de même des objets php?
    Il va falloire plancher un tout petit peu pour arriver à tes fins!

    Apparement tu veux contrôler 2 ou 3 champs non?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(!isset($titre) || $titre=="") 
    { 
          $erreur='Vous devez renseigner le titre de l\'actualité';
    }
    Tu pourrais déjà contrôler ces données directement depuis le formualire (en javascript donc) histoire d'éviter un retour en arrière, puis ensuite tu effectueras un contrôle supplémentaire en PHP.
    Si tu veux réellement afficher l'erreur au niveau du champ en question, tu vas devoir stocker en session tes données ($_SESSION["titre"]=$titre) mais aussi la (ou les) erreur, puis enfin, créer une petite zone (une cellule de tableau par ex) dans laquelle tu afficheras cette erreur.

    Concernant le contrôle PHP, tu devrais l'effectuer en dehors de ta fonction ajouteruneactualite() afin de bien séparer les traitements que tu effectues, quitte à créer une fonction controle_actualite() par exemple.

    Au niveau de ton formulaire il te faut aussi faire des conditions d'affichage des erreurs de ce genre à l'endroit désiré:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (isset($_SESSION["err_titre_vide"] && !empty($_SESSION["err_titre_vide"]))
          echo 'Merci de remplir le titre de l\'actualité';
    else
          echo '&nbsp;';
    Il n'y a rien de compliqué mais il faut te renseigner un peu plus sur le mécanisme des sessions, tu trouveras des tutos sur developpez.com.

    a+

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 104
    Par défaut
    merci pour tes conseils. j'ai déjà fait le controle en javascript

    je vais voir

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

Discussions similaires

  1. Vérification de formulaire avec regexp
    Par Shadow aok dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 06/08/2007, 11h57
  2. Recuperer les données d'un formulaire en PHP
    Par mekdar dans le forum Langage
    Réponses: 2
    Dernier message: 29/11/2005, 15h41
  3. récupérer une valeur d'un formulaire en php
    Par feten dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 21/11/2005, 13h29
  4. Réponses: 5
    Dernier message: 12/07/2005, 17h04
  5. JavaScript de vérification de formulaire
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 6
    Dernier message: 26/02/2003, 13h48

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