Buon giorno, ho questo problema, voglio utilizzare un file di testo come database, purtroppo l'unica cosa che mi manca di fare è l'Update di un record...
Vi posto il codice che utililzzo per l'Insert e la Delete, compresivo anche dell'Update che però non funziona...
Spero possiate aiutarmi.
Grazie mille e buona giornata a tutti.
Vi posto il codice che utililzzo per l'Insert e la Delete, compresivo anche dell'Update che però non funziona...
Codice:
$file_mess="../public/bacheca.txt";
$email_news = $_GET['rimuovi_bacheca'];
$update_bacheca = $_GET['update_bacheca'];
if (!file_exists($file_mess)) {
$newfile = fopen($file_mess,"w+");
fclose($newfile);
}
$newfile = fopen($file_mess,"r");
$content = fread($newfile, filesize($file_mess));
fclose($newfile);
#Modifica il valore selezionato
if($update_bacheca!=""){
$nickUt = $_POST['nickUt'];
$Old_mex = trim($_POST['old_mex']);
$New_mex = trim($_POST['new_mex']);
if (!file_exists($file_mess)) {
$newfile = fopen($file_mess,"w+");
fclose($newfile);
}
$newfile = fopen($file_mess,"r");
if(filesize($file_mess)==0){
$content = "\n";
$new_file=fopen($file_mess,"a+");
fwrite($newfile,$content);//fputs = a fwrite
fclose($newfile);
}
else{
$content = fread($newfile, filesize($file_mess));
fclose($newfile);
}
# Rimuovere gli slash che PHP mette automaticamente prima dei caratteri speciali
$content=stripslashes($content);
$out = "";
$lines = explode("\n",$content);
//estrapolo tutti i record(?) presenti
for ($key=1;$key<count($lines);$key++){
$out .= $lines[$key];
}
$New_mess = str_replace($Old_mex,$New_mex,$content3);
/*$lines = explode("\n",$content3);
for ($key=1;$key<count($content3);$key++){
if($content3[$key]!=""){//se il file non è vuoto*/
$commento = "\n" . $nickUt . "<br/>" . $New_mess . "<br/>";
/*}
}*/
if (is_writable($file_mess)) {
if (!$handle = fopen($file_mess, 'a+')) {
echo " <script language=\"javascript1.2\">
alert(\"Il messaggio non è stato inserito_1!\");
location.href=\"?bacheca_ins=1&c_sf=$c_sf\";
</script>";
}
if (!fwrite($handle, $commento)) {
echo " <script language=\"javascript1.2\">
alert(\"Il messaggio non è stato inserito_2!\");
location.href=\"?bacheca_ins=1&c_sf=$c_sf\";
</script>";
}
echo " <script language=\"javascript1.2\">
alert(\"La nuova data è stata inserita nella Bacheca!\");
location.href=\"?bacheca_ins=1&c_sf=$c_sf\";
</script>";
fclose($handle);
}//close 2° if
}//close $update_bacheca
//elimina il record
else{
$out="";
# Mettere le entrate(spazi?) negli array per l'allineamento
$lines = explode("\n",$content);
for ($key=1;$key<sizeof($lines);$key++){
# quando il messaggio non è nella lista, aggiungere i vecchi messaggi
if ($lines[$key] != $email_news){
$out .= "\n".$lines[$key];
}
# quando è già nella lista,(trovato=1)
else {
$found=1;
}
}
$disp="no";
# If the email is in the list...
# Se il messaggio è nella lista...
if ($found == 1){
$newfile = fopen($file_mess,"w+");
fwrite($newfile, $out);
fclose($newfile);
echo " <script language=\"javascript1.2\">
alert(\"Messaggio rimosso con successo!\");
location.href=\"?bacheca_ins=1&c_sf=$c_sf\";
</script>";
$disp="no";
}
if ($found != 1){
echo " <script language=\"javascript1.2\">
alert(\"Non è stato possibile cancellare il Messaggio!\");
location.href=\"?bacheca_ins=1&c_sf=$c_sf\";
</script>";
$disp="YES";
}
}//close else
Spero possiate aiutarmi.
Grazie mille e buona giornata a tutti.