Page 1 sur 1

Call to undefined function: filter_var() : comment puis-je f

Posté : 19 janv. 2009, 00:12
par Tohru222
Bonjour,

voilà tout est dans le titre.

je viens de mettre mon site sur l'hébergeur Free. Il marchait très bien sur mon ordi, et là j'ai l'erreur :
Call to undefined function: filter_var()

comment puis-je faire pour détourner le problème ?

merci

Posté : 19 janv. 2009, 00:22
par jojolapine
Aller voir ailleurs?
Non sèrieusement, Free ne propose pas l'extension filter...
Donc à toi de voir si tu peux faire autrement, ou si tu dois aller chez un vrai hébergeur ;)

Posté : 19 janv. 2009, 00:23
par Tohru222
en fait je l'ai utilisé, lors de l'identification des visiteurs. le login c leur e-mail, et je voulais vérifier, que ce qui est saisi est bien au format e-mail....

Posté : 19 janv. 2009, 00:54
par Stef
Dans le traitement du formulaire de login tu peux utiliser un truc comme ça pour vérifier qu'il s'agit bien d'un mail:
if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $email))

{

        echo 'Ce n\'est pas une adresse qu\'elle est correcte...';
}
Je ne sais pas si ça correspond à ce que tu cherches...

$email doit correspondre au champ mail de ton formulaire, donc tu mets ce que tu veux à la place.

Posté : 19 janv. 2009, 14:59
par Tohru222
Merci Stef ça marche impec !!!!

merci encore

Posté : 19 janv. 2009, 15:37
par zeus
Pour l'explication de l'absence, je pense que ça viens du fait que filter_var() est une fonction disponible depuis php 5.2.0, et que free, par défaut, propose PHP 4.

Il faut mettre en place un .htaccess pour utiliser PHP 5 pour les fichier .php.
Selon plusieurs sources google, dans le cas de Free, il suffit de mettre

Code : Tout sélectionner

php 1
dans le .htaccess pour que PHP 5 soit la version utilisée

Posté : 19 janv. 2009, 15:37
par Stef
Pas de quoi, ravi d'avoir pu te rendre service! :wink:

ceci-dit, et pour ne point manquer à mes obligations de membre de ce forum, je t'invite à te documenter sur ce que tu viens d'utiliser... normal, il ne faut pas faire que recopier, il faut aussi apprendre! :D

certains par ici furent vertement repris par les maître jedi de php france pour n'avoir point encourager ceux qui viennent en quête de réponse à aller dans le sens que j'ai évoqué dans mon conseil!
Nonobstant la forme de leur remontrance (qui parfois peut être sèche), et compte tenu du bon sens de leur position, je dois bien reconnaître qu'ils ont raisons les maîtres jedi... :)

Posté : 03 mars 2009, 22:34
par zerstorer
Les fonctions "filter_*" sont disponibles à partir de PHP 5.2.0

Or, les serveurs de free, même en activant PHP 5, utilisent "PHP Version 5.1.3RC4-dev"

Donc oui, les Regex sont la meilleure solution en remplacement :)