TUTO PHP - Un filtre à (gros) mots


Envie de filtrer automatiquement certains mots sur les parties publiques de votre site internet (espaces commentaires, forums, etc.) ? Voici un petit tutoriel qui vous montrera deux des nombreuses façons qu'il existe pour réaliser ce genre de système  😉
  • Première méthode :
<?php

$bdd = new PDO('mysql:host=127.0.0.1;dbname=filtre;charset=utf8','root','');

$commentaire = "Salut ceci est un commentaire compose de pleins de mots !";

$req = $bdd->query('SELECT * FROM filtre');

$mots = [];
$rp = [];

while($m = $req->fetch()) {
   array_push($mots, $m['mot']);
   $r = '';
   for($i=0;$i<strlen($m['mot']);$i++) { 
      $r .= '*';
   }
   array_push($rp, $r);
}

var_dump($mots);
var_dump($rp);

$commentaire = str_replace($mots, $rp, strtolower($commentaire));
$commentaire = ucfirst($commentaire);

echo $commentaire;

?>
  • Seconde méthode :
<?php

$bdd = new PDO('mysql:host=127.0.0.1;dbname=filtre;charset=utf8','root','');

$commentaire = "Salut ceci est un commentaire compose de pleins de mots !";

$mots = $bdd->query('SELECT mot FROM filtre');
$mots = $mots->fetchAll(PDO::FETCH_COLUMN);

$rp = $bdd->query('SELECT rp FROM filtre');
$rp = $rp->fetchAll(PDO::FETCH_COLUMN);

var_dump($mots);
var_dump($rp);

$commentaire = str_replace($mots, $rp, strtolower($commentaire));
$commentaire = ucfirst($commentaire);

echo $commentaire;

?>


A propos de l'auteur

PrimFX
PrimFX

Salut tout le monde ! Je m'appelle Boris, j'ai 18 ans et je suis passionné d'informatique et de technologie. Je partage cette passion à travers mes vidéos que tu peux retrouver sur YouTube sous le nom de PrimFX ou bien sur ce site bien sûr (tutoriels de programmation (HTML, CSS, PHP), gameplays, vlogs high-tech...). @+

A voir aussi

Aucun Commentaire

POSTER UN COMMENTAIRE

Vous devez être connecté pour pouvoir poster un commentaire...

Pas encore de compte ? Créez-en un ici !