Salve, sto cercando di realizzare uno script che permetta di visualizzare le immagini presenti in una cartella, permetta di selezionare tramite checkbox quelle da cancellare e permetta tramite tasto submit di cancellare i file dalla cartella. Qualcuno conosce niente di simile? Ve ne sarei molto grato. Posto il codice se mai qualcuno ci capisse qualcosa, visto che sto provando a programmare in php da poco. Il codice non è dei migliori![]()
premetto che il codice ricava l'elenco delle foto da un elenco di "news" inserite nel DB, inquanto le immagini da visualizzare non sono altro che le foto associate all'id della news, usando come nome del file l'id stesso della news (es. news id = 45, nome immagine associata = 45.jpg) GRAZIE ANCORA
<?php
require_once('../lib.php');
check_user('gestione.php');
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="admin_style.css" media="all" />
<script type="text/javascript">
function check_checkbox(namecheckbox){
var newsarray = new Array();
var x;
newsarray = document.getElementsByName(namecheckbox);
for(x = 0; x < newsarray.length; x++){
if(newsarray[x].checked){
return true;
}
}
alert("Devi prima selezionare una fotografia!");
return false;
}
</script>
</head>
<body>
<h1>Cancellazione di una Immagine</h1>
<div class="functions">
<?php
if(isset($_POST['action']) and $_POST['action'] == "delete")
{
$conn = exec_db_connection();
$fotosarray = $_POST['news'];
$res = exec_select_query($conn,'site_news','*','fotoflag= 1','datainserimento');
$i = 0;
while ($row = mysql_fetch_assoc($res))
{
$newsarray = $row['id'];
$i++;
}
$count = count($newsarray);
for($i=0;$i < $count; $i++)
{
$a = $newsarray[$i];
$b = $fotosarray[$i];
if($a == $b)
{
$nomefile = "foto/".$fotosarray[$i].".jpg";
$check = unlink($nomefile);
if($check == true)
{
echo "<html><body>";
echo '<div class="messages">[img]images/ok.png[/img]</div>';
showmessage('<div class="error_messages_ok">Cancellazione effettuata con successo.
Clicca qui per cancellare altre immagini, oppure usa il menu a sinistra se vuoi effettuare altre operazioni.</div>');
echo "<html><body>";
}
}
}
exec_close_connection($conn);
}
else {
echo "<html><body>";
echo '<div class="messages">[img]images/error.png[/img]</div>';
showmessage('<div class="error_messages_ok">Errore di invio dei dati dal form. Riprovare utilizzando il menu a sinistra.</div>');
echo "<html><body>";
}
?>
<form action="readfoto.php" method="post" onSubmit="return check_checkbox('news[]');">
<?php
$count = 0;
$conn2 = exec_db_connection();
$res2 = exec_select_query($conn2,'site_news','*','fotoflag =1','datainserimento');
while ($row2 = mysql_fetch_assoc($res2))
{
echo "<div class=\"block_sfondo\">";
echo "<div class=\"block_foto\">";
echo "<img class=\"thumbs\" src=\"foto/" .$row2['id'].".jpg\" />";
echo "</div>";
echo "<div class=\"block_name\">";
echo "
Percorso del file:
www.training-solutions.it/admin/foto/".$row2['id'].".jpg
";
echo '<input type="checkbox" id="news" name="news[]" value="'.$row2['id'].'" /></p>';
echo "</div>";
echo "</div>";
}
exec_close_connection($conn2);
?>
<input type="submit" value="Cancella le immagini selezionate" />
<input type="hidden" value="delete" id="action" name="action" />
</form>
</div>
</body>
</html>