erreur champ tel.

Eléphant du PHP | 183 Messages

24 août 2006, 09:02

Salut a tout phpfrance !
J'ai des bug ds mon prog, lors la récupération du champ telephone, je ne recupere pas les 10 chiffres si je mets 0123456789 mais si je mets 1234560789 là ça marche, en fait si le 1er chiffre est un zero, il le prend pas???!!!

mon code de controle du champ :
//Vérification si champ tel saisit=>contient que des chiffres
	if ($_POST["tel_client"]=="") {
		unset($erreur["champ3"]);
	} elseif ($_POST["tel_client"]!="" && is_numeric($_POST["tel_client"])) {
		$tel_client=htmlentities($_POST["tel_client"]); 
		unset($erreur["champ3"]);
	} else  {
		$erreur["champ3"]="Veuillez saisir un n° de téléphone qui contient que des chiffres !<br>";
	}
Je me demande si la fonction is_numeric est pas la cause du probleme sinon comment verifier qu'un champ contient que "0123456789" et rien d'autre....
merci

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

24 août 2006, 10:04

Bonjour,

Regarde du côté des regex (cf tuto phpFrance), avec la classe [0-9] ça devrait le faire :-)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 183 Messages

24 août 2006, 10:57

ok merci mais je viens d'apprendre que le tel pourra contenir des () + 33 015544 donc on a conclut un varchar sans controle, tant mieux pour moi ;-) a+