Bonjour à tous,
Je suis débutant en php et j'essaie de contrôler les données fournies par un formulaire et tout spécialement le numéro de téléphone avant enregistrement dans la bdd.
Malheureusement, je constate qu'il enregistre les numéros valides mais également invalides. Une âme généreuse et indulgente pourrait-il consulter mon code et m'indiquer par exemple si le numtel n'est pas valide que faut-il faire et où insérer ?
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
<p>
<?php
if (isset($_POST['numtel']))
{
    $_POST['numtel'] = htmlspecialchars($_POST['numtel']); // On rend inoffensives les balises HTML que le visiteur a pu rentrer
 
    if (preg_match("#^0[1-68]([-. ]?[0-9]{2}){4}$#", $_POST['numtel']))
 
    {
        echo 'Le ' . $_POST['numtel'] . ' est un numéro <strong>valide</strong> !';
    }
    else
    {
 
       echo 'Le ' . $_POST['numtel'] . ' n\'est pas valide, recommencez !';
    }
}	
  ?>
 
<form method="post">
<p>
    <label for="nom">Votre nom ?</label> <input id="nom" name="nom" /><br />
    <label for="prenom">Votre prenom ?</label> <input id="prenom" name="prenom" /><br />
    <label for="numtel">Votre téléphone ?</label> <input id="numtel" name="numtel" /><br />
 
 
 <input type="submit" value="Envoyer" />
</p>
    </form>
 
	<?php
	// Connexion à la base de données
try
{
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
 
 
 
 
    // Insertion du message à l'aide d'une requête préparée
$req = $bdd->prepare('INSERT INTO numtel (nom, prenom, numtel) VALUES(?, ?, ?)');
    $req->execute(array($_POST['nom'], $_POST['prenom'], $_POST['numtel']));
// Redirection du visiteur vers la page du minichat
 
 //*   header('Location: CodePHPTelephone.php');*//
}
catch(Exception $e)
{
    die('Erreur : '.$e->getMessage());
}
?>
Sincères remerciements
Claudine