PDA

View Full Version : errore PHP


Canini
11-09-2012, 14:36
Salve a tutti,
sto programmando una piccola applicazione PHP che gestisce i commenti.
Ho voluto integrare un metodo di censura per poter impedire l'inserimento di una lista di parole (presente in un file di testo) nei messaggi e qui sorge il problema.
Questo è la funzione:

function censura($mex)
{
$file = fopen("parolacce.txt","a");
$parole = explode(",",fread($file,filesize("parolacce.txt")));
$length_parole = count($parole);
$mex_f = "";
for($i = 0; $i < $length_parole; $i++)
{
/*RIGA 48*/ if(stristr($mex,$parole[$i]))
{
$parole[$i] == " (*censura*) ";
}
$mex_f = $mex_f . " " . $parole[$i] . " ";
}
return $mex_f;
}

$mex: contiene il commento
"parolacce.txt": il documento contenente tutte le parole da censurare

Mi appare un errore:
"Warning: stristr(): Empty delimiter in C:\ (percorso del programma compilato in localhost tramite easyphp) \show-comment.php on line 48".
E in più la variabile $mex_f risulta vuota alla chiusura del metodo.
Premetto che sono un novellino di PHP quindi può darsi che il problema sia anche molto banale per voi programmatori di professione ma io non ne vado a capo nemmeno cercando sul web. :muro:

Vi sarei grato che mi indicaste l'errore insomma.
Grazie!

Dânêl
11-09-2012, 18:57
L'errore dovrebbe essere dovuto al fatto che $parole[$i] è una stringa vuota. Verifica di volta in volta i valori che assume.