Para empezar, hacer un if por cada palabra es un tanto costoso.
Puedes tener un array lleno de palabras del tipo lista negra.
Luego lo podrías comprobar con in_array();
Lo segundo que comentas ya se complica. Podrías utilizar funciones como stristr() que buscaran la palabra en un string..
El problema, es que si meto culo en la lista negra, con esa función, si pongo de usuario Crepusculo, la detectara como insulto. Ahí ya, tendrías que construir un regex que aisle las palabras entre espacios y otras cosas y se vuelve bastante complicado.
Por eso, la mayoría prefieren tener una lista negra cortita con cosas básicas y para lo demás poner el "Reportar usuario" para que se le pueda reportar en caso de un nick no adecuado.
Saludos
Puedes tener un array lleno de palabras del tipo lista negra.
Código (php) [Seleccionar]
$lista_negra = array('idiota','jilipichi','tonto','eres gilipollas o peinas setas?');
Luego lo podrías comprobar con in_array();
Código (php) [Seleccionar]
if(in_array($user,$lista_negra)){
echo 'Menos insultos y mas peinar setas';
}
Lo segundo que comentas ya se complica. Podrías utilizar funciones como stristr() que buscaran la palabra en un string..
Código (php) [Seleccionar]
if(stristr('idiota',$user)){
echo 'Menos insultos y mas peinar setas';
}
El problema, es que si meto culo en la lista negra, con esa función, si pongo de usuario Crepusculo, la detectara como insulto. Ahí ya, tendrías que construir un regex que aisle las palabras entre espacios y otras cosas y se vuelve bastante complicado.
Por eso, la mayoría prefieren tener una lista negra cortita con cosas básicas y para lo demás poner el "Reportar usuario" para que se le pueda reportar en caso de un nick no adecuado.
Saludos