devi passargli il percorso sul server, non quello web, usa la funzione basename() per tirarti fuori il nome del file, poi aggiungigli il percorso assoluto tipo:Originariamente inviato da Chef89
Salve ho creato uno script per caricare immagini sul server.
Funziona che viene caricata l'immagine sul server e tutti i dati (link all'immagine compreso) nel db (mysql).
Ora vorrei procedere alla creazione della pagina di elimina delle immagini (però vorrei dare la possibilità di eliminare + immagini contemporaneamente. Vi riporto il mio script.
Questa è la pagina dalla quale si scelgono le immagini da eliminare
Questo è la pagina di elaborazione del file di elimina_immagini.phpCodice PHP:
$query1 = "SELECT * FROM immagini ORDER BY id DESC";
$results1 = mysql_query($query1) or die (mysql_error());
echo '<form action="elimina_immagini.php" method="post">';
while ($row1 = mysql_fetch_array($results1))
{
echo "<input type=\"checkbox\" name=\"ID[]\" value=\"$row1[id]\" /> $row1[image] - [b]$row1[name][/b]
";
}
in questo modo però mi elimina solamente il file dal database.. cmq $row2[link] è il percorso all'immgine es www.tuosito.com/immagine.jpg infatti per richiamare un immagine mi basta inserire quella variabileCodice PHP:
foreach ($_POST[ID] as $delete_id)
{
$query2 = "SELECT * FROM immagini WHERE id=$_POST[id]";
$results2 = mysql_query($query2) or die(mysql_error());
$row2 = mysql_fetch_array($results2);
unlink($row2['link']);
$query = "DELETE FROM immagini WHERE id='$delete_id'";
if(mysql_query($query)) echo "<p align=\"center\">Eliminazione avvenuta con successo.</p>";
else echo "<p align=\"center\">Errore durante l'eliminazione</p>";
}
$_SERVER['DOCUMENT_ROOT'].'dir_immagini/'.basename($row2['link']);
ciao