Formulaire php et html

Bonjour, j'ai un champ téléphone et code postal j'aimerais que dans le champ code postal il est possible de mettre que 5 chiffre mais que des chiffres aucun lettre sinon il y a une erreur et téléphone idem mais 10 chiffre est-ce possible si oui Comment ?

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. pour que la regex accepte les numéro de téléphone suivant :

    0153789999
    01 53 78 99 99
    01-53-78-99-99
    01.53.78.99.99
    0153 78 99 99
    0153.78 99-99

    il faut mettre :
    #^0[1-68]([-. ]?[0-9]{2}){4}$#


    et pour le code postal vous en trouverez des toutes faite sur internet

    http://www.laissemoichercherca.com/?q=regex%20code%20postal%20php

    mouhahahahahahah bonne journée

    1. Merci
    2. ...mais je les mets où dans mon code ?
      <?php
      if(isset($_POST['Nomprenom']) && isset($_POST['Datedenaissance']) && isset($_POST['Adresse']) && isset($_POST['Ville']) && isset($_POST['Cp']) && isset($_POST['Civil']) && isset($_POST['Email'])&& isset($_POST['Telephone'])&& isset($_POST['Code']) && $_POST['Nomprenom'] != "" && $_POST['Datedenaissance'] != "" && $_POST['Adresse'] != "" && $_POST['Ville'] != "" && $_POST['Cp'] != "" && $_POST['Civil'] != "" && $_POST['Email'] != ""&& $_POST['Telephone'] != ""&& $_POST['Code'] != ""){
          $Nomprenom = $_POST['Nomprenom']; 
      	$Datedenaissance = $_POST['Datedenaissance']; 
      	$Adresse =$_POST['Adresse']; 
      	$Ville = $_POST['Ville']; 
      	$Cp= $_POST['Cp'];  
          $Civil = $_POST['Civil']; 
      	$Email = $_POST['Email'];
          $Telephone = $_POST['Telephone']; 	
      	$Code = $_POST['Code']; 
       $connect= mysql_connect('localhost','admin','31p71h49') or die('Impossible de se connecter au serveur MySQL');
          mysql_select_db("cashprog");  
          mysql_query("INSERT INTO clients (Nomprenom,Datedenaissance,Adresse,Ville,Cp,Civil,Email,Telephone,Code)VALUES('$Nomprenom','$Datedenaissance','$Adresse','$Ville','$Cp','$Civil','$Email','$Telephone','$Code')");
      	}
      ?>
      <!DOCTYPE html>
      <html>
          <head>
              <meta charset="utf-8" />
              <title>Nouveau client-CashProg</title>
      		<LINK rel="stylesheet" type="text/css" href="style.css">
          </head>
      
          <body>
      
      	<p><font color="red">/!\ Tous les champs doivent être remplis /!\</font>
      <form method="POST" action="nouveauxclient.php">
      <center><fieldset><legend><font color="red">Nouveaux Client</font></legend>
      <TABLE BORDER=0>
      <TR>
      <TD>Code:</TD>
      	<TD><input type="text" name="Code" value="<?php echo rand(1, 9999999) ?>" /></TD>
      	<TR>
      <TD><label for="Civil" >Civilité:</TD>
            <TD><select name="Civil">
                 <option>Mr.</option>
                 <option>Mlle</option>
                 <option>Mme</option>
      		   </select></TD>
      	<TD>Nom et prenom</TD>
      	<TD>
      	<INPUT type=text name="Nomprenom" required>
      	</TD>
      </TR>
      <TR>
      	<TD>Adresse</TD>
      	<TD>
      	<INPUT type=text name="Adresse">
      	</TD>
      	<TD>Code Postal</TD>
      	<TD>
      	<INPUT type=text name="Cp" required>
      	</TD>
      	</TR>
      	<TR>
      	<TD>Ville</TD>
      	<TD>
      	<INPUT type=text name="Ville">
      	</TD>
      	<TD>Telephone</TD>
      	<TD>
      	<INPUT type=text name="Telephone">
      	</TD>
      	</TR>
      	<TR>
      	<TD>Email</TD>
      	<TD>
      	<INPUT type=text name="Email">
      	</TD>
      	<TD>Date de naissance</TD>
      	<TD>
      	<INPUT type=text name="Datedenaissance">
      	</TD>
      </TABLE></center>
      <center><INPUT border=0 src="ok.png" type=image Value=submit align="middle" > </center>
      </FORM><br><br/>
      </fieldset><center>
       </body>
       </html>
  2. if(isset($_POST['Nomprenom']) && isset($_POST['Datedenaissance']) && isset($_POST['Adresse']) && isset($_POST['Ville']) && isset($_POST['Cp']) && isset($_POST['Civil']) && isset($_POST['Email'])&& isset($_POST['Telephone'])&& isset($_POST['Code']) && $_POST['Nomprenom'] != "" && $_POST['Datedenaissance'] != "" && $_POST['Adresse'] != "" && $_POST['Ville'] != "" && $_POST['Cp'] != "" && $_POST['Civil'] != "" && $_POST['Email'] != ""&& $_POST['Telephone'] != ""&& $_POST['Code'] != ""){ 
    
    if (isset($_POST['telephone'])) 
    { 
        $_POST['telephone'] = htmlspecialchars($_POST['telephone']); 
    
        if (preg_match("#^0[1-68]([-. ]?[0-9]{2}){4}$#", $_POST['Telephone'])) 
        { 
             $Telephone = $_POST['Telephone'];   
        } 
        else 
        { 
            echo 'Le ' . $_POST['Telephone'] . ' n\'est pas valide, recommencez !'; 
        } 
    } 
        $Nomprenom = $_POST['Nomprenom'];  
     $Datedenaissance = $_POST['Datedenaissance'];  
     $Adresse =$_POST['Adresse'];  
     $Ville = $_POST['Ville'];  
     $Cp= $_POST['Cp'];   
        $Civil = $_POST['Civil'];  
     $Email = $_POST['Email']; 
        
     $Code = $_POST['Code'];  
     $connect= mysql_connect('localhost','admin','31p71h49') or die('Impossible de se connecter au serveur MySQL'); 
        mysql_select_db("cashprog");   
        mysql_query("INSERT INTO clients (Nomprenom,Datedenaissance,Adresse,Ville,Cp,Civil,Email,Telephone,Code)VALUES('$Nomprenom','$Datedenaissance','$Adresse','$Ville','$Cp','$Civil','$Email','$Telephone','$Code')"); 
     } 
    ?> 
    <!DOCTYPE html> 
    <html> 
        <head> 
            <meta charset="utf-8" /> 
            <title>Nouveau client-CashProg</title> 
      <LINK rel="stylesheet" type="text/css" href="style.css"> 
        </head> 
    
        <body> 
    
     <p><font color="red">/!\ Tous les champs doivent être remplis /!\</font> 
    <form method="POST" action="nouveauxclient.php"> 
    <center><fieldset><legend><font color="red">Nouveaux Client</font></legend> 
    <TABLE BORDER=0> 
    <TR> 
    <TD>Code:</TD> 
     <TD><input type="text" name="Code" value="<?php echo rand(1, 9999999) ?>" /></TD> 
     <TR> 
    <TD><label for="Civil" >Civilité:</TD> 
          <TD><select name="Civil"> 
               <option>Mr.</option> 
               <option>Mlle</option> 
               <option>Mme</option> 
         </select></TD> 
     <TD>Nom et prenom</TD> 
     <TD> 
     <INPUT type=text name="Nomprenom" required> 
     </TD> 
    </TR> 
    <TR> 
     <TD>Adresse</TD> 
     <TD> 
     <INPUT type=text name="Adresse"> 
     </TD> 
     <TD>Code Postal</TD> 
     <TD> 
     <INPUT type=text name="Cp" required> 
     </TD> 
     </TR> 
     <TR> 
     <TD>Ville</TD> 
     <TD> 
     <INPUT type=text name="Ville"> 
     </TD> 
     <TD>Telephone</TD> 
     <TD> 
     <INPUT type=text name="Telephone"> 
     </TD> 
     </TR> 
     <TR> 
     <TD>Email</TD> 
     <TD> 
     <INPUT type=text name="Email"> 
     </TD> 
     <TD>Date de naissance</TD> 
     <TD> 
     <INPUT type=text name="Datedenaissance"> 
     </TD> 
    </TABLE></center> 
    <center><INPUT border=0 src="ok.png" type=image Value=submit align="middle" > </center> 
    </FORM><br><br/> 
    </fieldset><center> 
     </body> 
     </html>


    Voila j'ai pas tester mais ca devrai fonctionner

    "Un homme azerty en vaut deux"
    1. merci mais j'ai une erreur !

      ( ! ) Notice: Undefined variable: Telephone in C:\wamp\www\CashProg\nouveauxclient.php on line 28
      Call Stack
      # Time Memory Function Location
      1 0.0015 703224 {main}( ) ..\nouveauxclient.php:0
    2. Il y a un mélange des $_POST['telephone'] (avec un t minuscule) et $_POST['Telephone'] (avec un T majuscule). Il faut une majuscule partout
  3. ok et comme ça

    if(isset($_POST['Nomprenom']) && isset($_POST['Datedenaissance']) && isset($_POST['Adresse']) && isset($_POST['Ville']) && isset($_POST['Cp']) && isset($_POST['Civil']) && isset($_POST['Email'])&& isset($_POST['Telephone'])&& isset($_POST['Code']) && $_POST['Nomprenom'] != "" && $_POST['Datedenaissance'] != "" && $_POST['Adresse'] != "" && $_POST['Ville'] != "" && $_POST['Cp'] != "" && $_POST['Civil'] != "" && $_POST['Email'] != ""&& $_POST['Telephone'] != ""&& $_POST['Code'] != "" && preg_match("#^0[1-68]([-. ]?[0-9]{2}){4}$#", $_POST['Telephone']))){ 
        
        $Nomprenom = $_POST['Nomprenom'];  
     $Datedenaissance = $_POST['Datedenaissance'];  
     $Adresse =$_POST['Adresse'];  
     $Ville = $_POST['Ville'];  
     $Cp= $_POST['Cp'];   
        $Civil = $_POST['Civil'];  
     $Email = $_POST['Email']; 
        $Telephone = $_POST['Telephone'];  
     $Code = $_POST['Code'];  
     $connect= mysql_connect('localhost','admin','31p71h49') or die('Impossible de se connecter au serveur MySQL'); 
        mysql_select_db("cashprog");   
        mysql_query("INSERT INTO clients (Nomprenom,Datedenaissance,Adresse,Ville,Cp,Civil,Email,Telephone,Code)VALUES('$Nomprenom','$Datedenaissance','$Adresse','$Ville','$Cp','$Civil','$Email','$Telephone','$Code')"); 
     } 
    if (!preg_match("#^0[1-68]([-. ]?[0-9]{2}){4}$#", $_POST['telephone'])) 
    { 
    echo"<p>mauvais telephonne</p>"; 
    } 
    ?> 
    <!DOCTYPE html> 
    <html> 
        <head> 
            <meta charset="utf-8" /> 
            <title>Nouveau client-CashProg</title> 
      <LINK rel="stylesheet" type="text/css" href="style.css"> 
        </head> 
    
        <body> 
    
     <p><font color="red">/!\ Tous les champs doivent être remplis /!\</font> 
    <form method="POST" action="nouveauxclient.php"> 
    <center><fieldset><legend><font color="red">Nouveaux Client</font></legend> 
    <TABLE BORDER=0> 
    <TR> 
    <TD>Code:</TD> 
     <TD><input type="text" name="Code" value="<?php echo rand(1, 9999999) ?>" /></TD> 
     <TR> 
    <TD><label for="Civil" >Civilité:</TD> 
          <TD><select name="Civil"> 
               <option>Mr.</option> 
               <option>Mlle</option> 
               <option>Mme</option> 
         </select></TD> 
     <TD>Nom et prenom</TD> 
     <TD> 
     <INPUT type=text name="Nomprenom" required> 
     </TD> 
    </TR> 
    <TR> 
     <TD>Adresse</TD> 
     <TD> 
     <INPUT type=text name="Adresse"> 
     </TD> 
     <TD>Code Postal</TD> 
     <TD> 
     <INPUT type=text name="Cp" required> 
     </TD> 
     </TR> 
     <TR> 
     <TD>Ville</TD> 
     <TD> 
     <INPUT type=text name="Ville"> 
     </TD> 
     <TD>Telephone</TD> 
     <TD> 
     <INPUT type=text name="Telephone"> 
     </TD> 
     </TR> 
     <TR> 
     <TD>Email</TD> 
     <TD> 
     <INPUT type=text name="Email"> 
     </TD> 
     <TD>Date de naissance</TD> 
     <TD> 
     <INPUT type=text name="Datedenaissance"> 
     </TD> 
    </TABLE></center> 
    <center><INPUT border=0 src="ok.png" type=image Value=submit align="middle" > </center> 
    </FORM><br><br/> 
    </fieldset><center> 
     </body> 
     </html>



    "Un homme azerty en vaut deux"
    1. Non le premier fonctionné mieux, mais j'ai une erreur pour le premier j'ai rectifier les telephone par Telephone mais j'ai l'erreur

      Le 0623 n'est pas valide, recommencez !
      ( ! ) Notice: Undefined variable: Telephone in C:\wamp\www\CashProg\nouveauxclient.php on line 28
      Call Stack
      # Time Memory Function Location
      1 0.0014 703216 {main}( ) ..\nouveauxclient.php:0
    2. c est quelle ligne la 28, je pose la question car je ne sait si vous m'avez donné le code en entier
    3. le code est en entier