Salut à tous,
J'essaie de créer une fonction php qui détectera si certains mots clés sont présents dans les champs de mes formulaires mais j'ai un peu de mal à trouver la solution, un peu d'aide serait le bienvenue
J'ai la variable "$mot_spam" qui contient les mots à exclure :
On peut trouver dans cette liste des mots classiques comme "viagra" mais aussi des termes comme "select(" qui empêchera les tentatives d'injections de code via mes formulaires.
Voici la fonction php que j'ai créée :
Et voici la phrase à tester :
Si on teste ça marche pas, si je retire le mot "viagra" de la phrase ci-dessus ça indique toujours que le "Le texte n'est pas propre" :?
Qu'est-ce qui déconne dans ma fonction php ?
Merci pour votre aide.
J'essaie de créer une fonction php qui détectera si certains mots clés sont présents dans les champs de mes formulaires mais j'ai un peu de mal à trouver la solution, un peu d'aide serait le bienvenue

J'ai la variable "$mot_spam" qui contient les mots à exclure :
Code:
$mot_spam = array('levitra','viagra','cialis','casino','free sex','porn','facebook','fan page','twitter followers','select(','from(','sleep(','sysdate(','(select','now(','print(');
Voici la fonction php que j'ai créée :
Code:
function get_spam($texte, $mot_spam){
global $mot_spam;
foreach($mot_spam as $word)
{
$pos = stripos($texte, $word);
if($pos===false)
{
return false;
}
else
{
return true;
}
}
}
Code:
$texte = "cette phrase contient le mot viagra mais pas le mot nounours";
Code:
if(get_spam($texte, $mot_spam)==false)
{
echo "Le texte n'est pas propre";
}
else
{
echo "Le texte est propre";
}
Merci pour votre aide.