Salve a tutti, ho creato il seguente script per cancellare dei messaggi indesiderati in un guestbook tramite apposito pannello:
Lo script funziona benissimo su di un sito con host win, quando invece ho dovuto utilizzarlo per un sito collocato su un server linux stranamente, per me ovvio, non funge!!Codice PHP:include("messages.txt");
$righe = file("messages.txt");
$identificatore = $righe[1];
$contatore = count($righe);
$jk = $qt_delete; //VARIABILE PASSATA CON METODO GET
while ($contatore >= 0):
$identificatore_cancella = substr($righe[$contatore], -31, 25);
$fine_msg = "CANCELLA=".$jk;
if ($fine_msg == $identificatore_cancella){
$cancella = $contatore;
while($righe[$cancella] != $identificatore):
unset($righe[$cancella]);
$cancella--;
endwhile;
unset($righe[$cancella]);
unset($righe[$cancella-1]);
$righe = implode("",$righe);
$h=fopen('messages.txt','w');
fwrite($h,$righe);
fclose($h);
}
$contatore--;
endwhile;
Il problema secondo me sta nel fatto che lo script non riesce a riconoscere gli identificatori testuali che ogni messaggio possiede all'inizio ed alla fine nel file messages.txt, e questo ovviamente preclude i due cicli "while" alla base di tutto.
Sono tre giorni che ci sbatto la testa senza venirne a capo, a me piace tantissimo cimentarmi con il php, ma in questo caso penso che il problema vada aldilà delle mie conoscenze, quindi se neanche in questo forum troverò la soluzione o l'intuizione giusta per risolvere il dilemma penso che cercherò con dispiacere qualcosa di già pronto....
Ringrazio in anticipo chiunque mi aiuterà anche con semplici suggerimenti.

Rispondi quotando