Problème de vérification caractère champs téléphone (formulaire) [Résolu/Fermé]

Messages postés
128
Date d'inscription
dimanche 28 octobre 2012
Statut
Membre
Dernière intervention
16 juin 2017
- - Dernière réponse : mad92men
Messages postés
128
Date d'inscription
dimanche 28 octobre 2012
Statut
Membre
Dernière intervention
16 juin 2017
- 29 oct. 2012 à 19:35
Bonjour,

Je rencontre un probleme sur mon formulaire (champ téléphone) que lequel j'aimerais avoir une verification des champ. en fait j'ai crée un petit formulaire sur mon site pour que le clients puisse me laisser leurs numeros de telephone. mon script fonctionne à merveille j'arrive meme à recevoir le numero de telephone par mail. jai aussi une fonctionnalité qui permet de vérifier que les champs ne sont pas vide. mon seul souci cest que je n'arrive pas à mettre en place un scripte qui permet de limiter les caractères à saisir uniquement a 10 chiffres.

voila mon code de la page html



<form action="recup.php" onsubmit="return valider()"
method="post" name="formSaisie">
<p><img src="../images/appelez moi.png" alt="appelez_moi" width="99" height="100" class="left" longdesc="http://www.changerecranpascher.fr" /></p>
<p> </p>
<p>
<input name="telephone" type="text" class="entry" id="telephone" />
<input type="submit" value="Appelez moi" />
</p>
<p> </p>
</form>



<script type="text/javascript">
//<![CDATA[
function valider(){
// si la valeur du champ prenom est non vide
if(document.formSaisie.telephone.value != "") {
// les données sont ok, on peut envoyer le formulaire
return true;
}

else {
// sinon on affiche un message
alert("Saisissez votre numéro de téléphone");
// et on indique de ne pas envoyer le formulaire
return false;
}

}
//]]>
</script>


et celui de la page php




<?php

$telephone="";
if (isset($_POST['telephone'])){
$telephone = $_POST['telephone'];
}

echo "<h1>Nous avons bien réçu votre numéro de téléphone, nous vous rappellerons dans les plus brefs délais</h1>\n";
echo "<p>\n";
echo "Téléphone : ".$telephone."<br/>\n";
echo "</p>\n";


$contenu="$telephone";
$contenu=str_replace(chr(60),"",$contenu);
$contenu=str_replace(chr(10),"<br/>",$contenu);

$headers="From: <$telephone>\n";
$headers.="Content-Type: text/html; charset=UTF-8\n";

$to="moi@monmail.fr";
$objet="Service appelez moi";

mail($to, $objet, $contenu, $headers);
?>

voilà j'esper avoir ete claire. merci d'avance pour votre aide

Afficher la suite 

4 réponses

Messages postés
1945
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
11 mai 2014
243
0
Merci
bonsoir,

il suffit d'ajouter l'attribut maxlength="10" à ta balise input

et de vérifier en php

if(strlen($_POST['champTelephone']) > 10) erreur...
Messages postés
128
Date d'inscription
dimanche 28 octobre 2012
Statut
Membre
Dernière intervention
16 juin 2017
2
0
Merci
Merci ça marche atropa mais j'ai oublie d'indiquer qu'il me fallait aussi un script qui empêche le visiteur d'insérer du text dans le champ téléphonique.
Merci d'avance c sympa de votre part
Messages postés
5374
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
866
0
Merci
<script type="text/javascript">
//<![CDATA[
function valider(){
	//pour pouvoir faire plusieurs test, il faut detecter d'abord les erreurs, et si pas d'erreur on envoie	
	var telephone=document.formSaisie.telephone.value;
	// si la valeur du champ telephone est vide
	if(telephone==""){
		alert("Saisissez votre numéro de téléphone");
		// et on indique de ne pas envoyer le formulaire en quitant la fonction
		return false;
	}
	// si non vide mais pas au bon format
	//regex
	var reg_telephone = '^(01|02|03|04|05|06|07|08|09)[0-9]{8}$';
	//
	if(telephone !="" && !telephone.match(reg_telephone) ){
		alert("Votre numéro de téléphone n'est pas valide");
		// et on indique de ne pas envoyer le formulaire en quitant la fonction
		return false;
	}
	//
	//tu peux rajouter d'autre test avec le même principe
	//
	// si on est arrivé jussque la c'est qu'il n'y a pas d'erreur donc on autorise l'envoi du formulaire
return true;
}



//]]>
</script>

<form method="post" name="formSaisie" action="recup.php" onsubmit="return valider();" >
<p><img src="../images/appelez moi.png" alt="appelez_moi" width="99" height="100" class="left" longdesc="http://www.changerecranpascher.fr" /></p>
<p> </p>
<p>
<input name="telephone" type="text" class="entry" id="telephone" />
<input type="submit" value="Appelez moi" />
</p>
<p> </p>
</form>
Messages postés
128
Date d'inscription
dimanche 28 octobre 2012
Statut
Membre
Dernière intervention
16 juin 2017
2
0
Merci
@Alain_42 Super ça marche merci beaucoup pour ton aide alain c'est sympa. je vais l'appliquer egalement sur mon formulaire de contact.