Un solución sería:
Código PHP:
<?
// Las palabras del array seran en minusculas.
$prohibidas = array('tontera1', 'tontera2', 'tontera3');
// Suponemos que $frase es tu campo de tu formulario q quieres validar ...
$frase="Hola voy a decir tontera1, nose que mas poner tontera3";
foreach ($prohibidas as $palabra_prohibida){
if (substr_count($frase,$palabra_prohibida) > 0){
// redireccionas a tu formulario y le pasas variable codigo con algun valor que lo gestionaras en tu formulario.
header ("location: tuformulario.php?codigo=1");
exit;
}
}
echo "todo OK";
// si la validación fué corecta puedes continua en este script
// con el proceso de inserccion a tu .txt o lo q corresponda.
?>
La validación se hace con todo el campo ... osese, una frase tipo:
"blabla
tontera1blabla bla ba" ... es detectada como palabra prohíbida ..
Detetectar solo palabras teniendo en cuenta signos de puntuación como: comas, parentesis, comillas ... sería mejor opción usar una expresión regular. Para que se detecte una palabra prohibida tipo: "bla bla tontera1, bla blabla" pero no; "bla blatontera1bla bla bla" ...
Un saludo,