Au passage, ta regex est très peu optimisée.
Voici ce que je te propose :
preg_match('/'.$cat.'/', $str_cats)
J'ai changé de POSIX avec ereg() à PCRE avec preg_match() : plus rapide, plus intéressant à tous les niveaux.
J'ai également supprimé les .* qui ne servaient à rien. Cela devrait largement améliorer les perfs de la regex, même si tu ne le remarqueras probablement pas.
Pour terminer, une structure if/else ne passera jamais dans les deux branches à la fois. Pour t'en assurer, tu peux exécuter ceci :
1 2 3 4 5 6 7 8 9 10 11
| if (!preg_match('/'.$cat.'/', $str_cats))
{
echo 'if';
$str_cats .= $cat;
$connection->query("UPDATE its_parametres SET valeur = ".quote_smart($str_cats)." WHERE parametre = 'cats'");
}
else
{
echo 'else';
$_SESSION['erreur'] = "Catégorie déjà existante";
} |
Partager