Expression reguilaire en php
anisss000
Messages postés
22
Statut
Membre
-
anisss000 Messages postés 22 Statut Membre -
anisss000 Messages postés 22 Statut Membre -
Bonjour,
je voudré completer mon code par des verification de mes chant de text par exemple l'email doi avoir un @ sinon on affiche un message de refus le numtel doit depassé 10 caractere merci de votre aide voila mon code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>TELEDIFFUSION D'ALGERIE </title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="author" content="fatma.hassan@gmail.com" />
<meta name="description" content="FTM" />
<link rel="stylesheet" href="touching.css" type="text/css" />
</head>
<body>
<div id="container">
<div id="banner">
<div id='bannertitle'>TELEDIFFUSION D'ALGERIE</div>
</div>
<div id="outer">
<div id="inner">
<div id="left">
<div class="verticalmenu">
<ul>
<li><a href="indexprincipale.php">acceuil</a></li>
<li><a href="employe.php">Ajouter</a></li>
<li><a href="rech_emp.php">Recherche</a></li>
<li><a href="liste_emp.php">Afficher</a></li>
<li><a href="sup_emp.php">Supprimer</a></li>
</ul>
</div>
</div>
<div id="content"><h2>Les coordonnés d'un employé :</h2>
<form action="test_ajout_emp.php" method="post">
<table>
<tr>
<td>code</td>
<td><input type="text" name="code" /><br>
</tr>
<tr>
<td>nom</td>
<td><input type="text" name="nom" /><br></td>
</tr>
<tr>
<td>prenom</td>
<td><input type="text" name="prenom" /><br></td>
</tr>
<tr>
<td>adresse</td>
<td><input type="text" name="adresse" /><br></td>
</tr>
<tr>
<td>Numtel</td>
<td><input type="text" name="numtel" /><br></td>
</tr>
<tr>
<td>email</td>
<td><input type="text" name="email" /><br></td>
</tr>
<tr>
<td>Code service</td>
<td><input type="text" name="service" /><br></td>
</tr>
</table>
<br>
<input type="submit" value="valider"/>
<input type="reset" value="Effacer"/>
</form>
</div><!-- end content -->
</div><!-- end inner -->
</div><!-- end outer -->
<div id="footer"><h1><a href="http://freethoughts.ftmblog.com">copyrights©FTM</a></h1></div>
</div><!-- end container -->
</body></html>
et la c'est la cible( test_ajout_emp) voila le code :
<?php
session_start();
$_SESSION['test_ajout_centre']=false;
// connexion a la base de donnes
try
{
$bdd= mysql_connect('127.0.0.1', 'root', '');
mysql_select_db ('base_de_donnees', $bdd);
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
$sql='SELECT * FROM employe WHERE code_employe =\''.mysql_real_escape_string($_POST['code']).'\' ';
$requet= mysql_query($sql) or die('erreur');
// employé n'existe pas
if(($nbr=mysql_num_rows($requet)) == 0) // donner le nombre de tuple
{
$_SESSION['test_ajout_centre']=true;
// ajouter un employé
$sql = 'INSERT INTO employe(code_employe,nom_employe,prenom_employe,adresse_employe,num_tel_employe,email_employe,code_service) VALUES
('.$_POST['code'].',\''.mysql_real_escape_string($_POST['nom']).'\',\''.mysql_real_escape_string($_POST['prenom']).'\',
\''.mysql_real_escape_string($_POST['adresse']).'\',\''.mysql_real_escape_string($_POST['numtel']).'\',
\''.mysql_real_escape_string($_POST['email']).'\',\''.mysql_real_escape_string($_POST['service']).'\')';
$req= mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
if ( $req ) {header('location:acc_employe.php');}
else {header('location:index.php'); }
}
else // existe
{$_SESSION['test_ajout_centre']=false;
header('location:form.php');}
?>
je voudré completer mon code par des verification de mes chant de text par exemple l'email doi avoir un @ sinon on affiche un message de refus le numtel doit depassé 10 caractere merci de votre aide voila mon code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>TELEDIFFUSION D'ALGERIE </title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="author" content="fatma.hassan@gmail.com" />
<meta name="description" content="FTM" />
<link rel="stylesheet" href="touching.css" type="text/css" />
</head>
<body>
<div id="container">
<div id="banner">
<div id='bannertitle'>TELEDIFFUSION D'ALGERIE</div>
</div>
<div id="outer">
<div id="inner">
<div id="left">
<div class="verticalmenu">
<ul>
<li><a href="indexprincipale.php">acceuil</a></li>
<li><a href="employe.php">Ajouter</a></li>
<li><a href="rech_emp.php">Recherche</a></li>
<li><a href="liste_emp.php">Afficher</a></li>
<li><a href="sup_emp.php">Supprimer</a></li>
</ul>
</div>
</div>
<div id="content"><h2>Les coordonnés d'un employé :</h2>
<form action="test_ajout_emp.php" method="post">
<table>
<tr>
<td>code</td>
<td><input type="text" name="code" /><br>
</tr>
<tr>
<td>nom</td>
<td><input type="text" name="nom" /><br></td>
</tr>
<tr>
<td>prenom</td>
<td><input type="text" name="prenom" /><br></td>
</tr>
<tr>
<td>adresse</td>
<td><input type="text" name="adresse" /><br></td>
</tr>
<tr>
<td>Numtel</td>
<td><input type="text" name="numtel" /><br></td>
</tr>
<tr>
<td>email</td>
<td><input type="text" name="email" /><br></td>
</tr>
<tr>
<td>Code service</td>
<td><input type="text" name="service" /><br></td>
</tr>
</table>
<br>
<input type="submit" value="valider"/>
<input type="reset" value="Effacer"/>
</form>
</div><!-- end content -->
</div><!-- end inner -->
</div><!-- end outer -->
<div id="footer"><h1><a href="http://freethoughts.ftmblog.com">copyrights©FTM</a></h1></div>
</div><!-- end container -->
</body></html>
et la c'est la cible( test_ajout_emp) voila le code :
<?php
session_start();
$_SESSION['test_ajout_centre']=false;
// connexion a la base de donnes
try
{
$bdd= mysql_connect('127.0.0.1', 'root', '');
mysql_select_db ('base_de_donnees', $bdd);
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
$sql='SELECT * FROM employe WHERE code_employe =\''.mysql_real_escape_string($_POST['code']).'\' ';
$requet= mysql_query($sql) or die('erreur');
// employé n'existe pas
if(($nbr=mysql_num_rows($requet)) == 0) // donner le nombre de tuple
{
$_SESSION['test_ajout_centre']=true;
// ajouter un employé
$sql = 'INSERT INTO employe(code_employe,nom_employe,prenom_employe,adresse_employe,num_tel_employe,email_employe,code_service) VALUES
('.$_POST['code'].',\''.mysql_real_escape_string($_POST['nom']).'\',\''.mysql_real_escape_string($_POST['prenom']).'\',
\''.mysql_real_escape_string($_POST['adresse']).'\',\''.mysql_real_escape_string($_POST['numtel']).'\',
\''.mysql_real_escape_string($_POST['email']).'\',\''.mysql_real_escape_string($_POST['service']).'\')';
$req= mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
if ( $req ) {header('location:acc_employe.php');}
else {header('location:index.php'); }
}
else // existe
{$_SESSION['test_ajout_centre']=false;
header('location:form.php');}
?>
A voir également:
- Expression reguilaire en php
- Easy php - Télécharger - Divers Web & Internet
- Expression écrite cm1 cm2 télécharger gratuit - Télécharger - Éducatifs
- Expert php pinterest - Télécharger - Langages
- Microsoft expression encoder - Télécharger - Divers Utilitaires
- Expression de recherche - Guide
1 réponse
Bonjour,
Pour vérifier un email vous pouvez utiliser la fonction suivante :
Vous avez l'expression régulière en haut du code, le reste sert à vérifier l'existence du domaine, mais pour ça il faut avoir une machine LINUX
Pour un numéro de téléphone cette expression régulière fait l'affaire :
'/^(01|02|03|04|05|08)[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/'
Cordialement
Pour vérifier un email vous pouvez utiliser la fonction suivante :
// Vérification stricte d'une adresse mail
function checkEmail($email) {
// checks proper syntax
if(preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/" , $email)) {
// gets domain name
list($username,$domain)=split('@',$email);
// checks for if MX records in the DNS
if(!checkdnsrr($domain, 'MX')) {
return false;
}
return true;
}
return false;
} // Vérification stricte d'une adresse mail
Vous avez l'expression régulière en haut du code, le reste sert à vérifier l'existence du domaine, mais pour ça il faut avoir une machine LINUX
Pour un numéro de téléphone cette expression régulière fait l'affaire :
'/^(01|02|03|04|05|08)[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/'
Cordialement
Que voulez-vous dire par là ?
Je n'ai pas trouvé équivalent sous Windows, mais mes applications Web sont toutes sur des serveurs LINUX, donc je n'ai pas vraiment cherché non plus.
Ceci dit la fonction checkdnsrr() dépend souvent du réseau et des fois elle donne une fausse alerte, donc vous pouvez éventuellement la zapper.