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 :

Interdire certains caractère dans un formulaire html


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 101
    Par défaut Interdire certains caractère dans un formulaire html
    Bonjour,

    J'ai réalisé un formulaire en html et il faut que j'interdise certains caractères dans ma balise <textarea>. Apparemment pour faire ceci, j'ai besoin d'un code en php. J'ai déjà une page .php pour me connecter à ma base de données et donc je dois écrire mon code dans ce fichier.
    Seulement je ne sais pas quelles lignes de code je dois écrire afin d'interdire, par exemple, le caractère ' ou encore /

    Voici mon code php :
    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
     
    <?php
     
    $host = "127.0.0.1";
    $user = "root";
    $pass = "kiki";
    $bdd = "egroupware";
     
    mysql_connect($host, $user, $pass) or die ("Impossible de se connecter avec ces identifiants");
     
    mysql_select_db("$bdd") or die ("Impossible de se connecter à la base");
     
     
    $table="egw_solucee";
    $objet=""; if(!empty($_POST["objet"]))
       $objet=addslashes($_POST["objet"]);
    $description=""; if(!empty($_POST["description"]))
       $description=$_POST["description"];
    $prive=""; if(!empty($_POST["prive"]))
       $prive=$_POST["prive"];
    $prio=""; if(!empty($_POST["prio"]))
       $prio=$_POST["prio"];
     
     
    $query = "INSERT INTO $table(tr_summary, tr_description, tr_private, tr_priority)";
    $query .= "VALUES('$objet', '$description', '$prive', '$prio')";
    $result = mysql_query($query);
     
    mysql_close();
     
    ?>

    Et 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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
    <html>
    <body> 
    	<form method="post" action="egw.php">
     
    		<font face="Century Gothic" size="-1">Nom :</font> <br /> <input type="text" name="nom" />
    		<br />
    		<br />
     
    		<font face="Century Gothic" size="-1">Prénom :</font> <br /> <input type="text" name="prenom" />
    		<br />
    		<br />
     
    		<font face="Century Gothic" size="-1">Entreprise :</font> <br /> <input type="text" name="entreprise" />
    		<br />
    		<br />
     
    		<font face="Century Gothic" size="-1">Objet de la demande :</font> <br /> <input type="text" name="objet" />
    		<br />
    		<br />
     
    		<font face="Century Gothic" size="-1">Description du problème : <br /> <textarea cols="45" rows="8" name="description" onfocus="if (this.value =='Entrez votre texte ici') this.value=''">Entrez votre texte ici</textarea></font>
    		<br />
     
    		<font face="Century Gothic" size="-1">Ce message est-il privé ?</font> <br /> <input type="radio" name="prive" value="non" id="non" checked="checked" />
    		<label for="non"><font face="Century Gothic" size="-1">Non</font></label>
    		<input type="radio" name="prive" value="oui" id="oui">
    		<label for="oui"><font face="Century Gothic" size="-1">Oui</font></label>
    		<br />
    		<br />
    		<br />
     
    		<font face="Century Gothic" size="-1">Son degrès de priorité : <br /> <select name="prio">
    		<option value="1">1 - Bas</option>
    		<option value="2">2</option>
    		<option value="3">3</option>
    		<option value="4">4</option>
    		<option value="5">5 - Moyen</option>
    		<option value="6">6</option>
    		<option value="7">7</option>
    		<option value="8">8</option>
    		<option value="9">9 - Haut</option>
    		</select></font>
    		<br />
    		<br />
    		<br />
    		<br />
    		<br />
    		<br />
    		<br />
    		<br />
    		<br />
     
    		<input type="submit" value="Envoyer" /> <input type="reset" value="Annuler" name="Annuler" />
    	</form>
    </body>
    </html>
    Merci de m'aider....

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2010
    Messages : 33
    Par défaut
    Le plus simple serait de vérifier celà en Javascript, néamoins, dans le code de la page qui récupère le POST, tu peux faire quelques choses du genre:

    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
     
    <?php
    $msg = $_POST['description'];
    $carac_interdits[] = array('\','/',';') ; 
    $traitement = 1 ;
    $erreur = 0 ;
    foreach($carac_interdits as $traitement) {
      $position = strpos($message_temporaire, $traitement) ; 
      if ($position !== FALSE) {
        echo 'Erreur : Vous ne pouvez pas utiliser le caractère    <strong>'.$traitement.'</strong> <br />' ;
       $erreur = 1 ;
     } 
    } // Fin de la boucle
    if($erreur == 0) {
     $sql = "INSERT ****";
     //suite du code SQL;
    }

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2010
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 101
    Par défaut
    J'ai trouvé la réponse !

    Mais merci d'avoir répondu

  4. #4
    Membre éclairé
    Inscrit en
    Février 2007
    Messages
    406
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 406
    Par défaut
    Je suis bien curieuse de connaitre ta solution

Discussions similaires

  1. Interdire certains caractères dans un champ
    Par sardaucar dans le forum VBA Access
    Réponses: 2
    Dernier message: 09/06/2014, 10h17
  2. Réponses: 1
    Dernier message: 20/08/2008, 13h49
  3. Compter un certain caractère dans une chaine.
    Par illuzmax dans le forum Débuter
    Réponses: 16
    Dernier message: 07/04/2006, 16h37
  4. Problème avec certains caractéres dans variable
    Par Off$ide dans le forum Langage
    Réponses: 14
    Dernier message: 13/12/2005, 10h46
  5. [W3C] Nombre de caractère dans les formulaires
    Par oranoutan dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 12/12/2005, 01h37

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