tfp.
som jeg skrev tidligere ville jeg lave det med functioner, personligt har jeg nogle std CRUD functioner som vist
http://www.eksperten.dk/spm/998598 #6
disse er så mine skabeloner, som bliver modificeret fra tabel til tabel
kig på nedenstående
functioer (utested)
div]
function billeder_Read_Older_X_Days($conn, $days=7){
$sql = "SELECT * FROM billeder WHERE DATE(dato) < DATE(DATE_SUB( NOW(), INTERVAL ".$days." DAY) ) and dato >'00:00:00";
//$rs = mysqli_query($conn, $sql);
$rs = $conn->query($sql);
$ar = array();
//while ($row = mysqli_fetch_assoc($rs) ){
while ($row = $rs->fetch_assoc()) {
$ar[] = $row;
}
return $ar;
}
function billeder_Delete($conn, $id){
$msg=""
$sql = "DELETE FROM billeder WHERE billedid = $id";
if ($result = mysqli_query($conn, $sql)) { // procedural style
//if ($result = $conn->query($sql)) { // oop style
$msg = "billed er slettet i DB";
}
return $msg;
}
function billeder_Delete_Older_X_Days($conn, $days=7){
$msg=""
$sql = "DELETE FROM billeder WHERE DATE(dato) < DATE(DATE_SUB( NOW(), INTERVAL ".$days." DAY) ) and dato >'00:00:00'";
if ($result = mysqli_query($conn, $sql)) { // procedural style
//if ($result = $conn->query($sql)) { // oop style
$msg = "Alt er slettet i DB";
}
return $msg;
}
[/div]
anvendelse
henter alle den der er ældre end 14 dage, og udskriver disse
(utested)
<?php
$liste = billeder_Read_Older_X_Days($hellestrik, 14);
for ($i = 0, $lng = count($liste); $i < $lng; $i++) {
echo $liste[$i]['billedid'] . " ";
echo $liste[$i]['billednavn'] . "<br>";
}
?>
henter billednavne og sletter hver enkelt fil, og derefter fjerner den fra db
her er et kald til billeder_Delete() for hvert billed
(utested)
<?php
$liste = billeder_Read_Older_X_Days($hellestrik); // 7 er default parameter
for ($i = 0, $lng = count($liste); $i < $lng; $i++) {
$billednavn = $liste[$i]['billednavn'];
// testere om filen findes
if(file_exists("Uploads/".$billednavn)) {
echo "Sletter filen: " . $billednavn. "<br>";
// den findes, vi sletter
unlink("Uploads/".$billednavn;
}
else{
echo "filen "."Uploads/".$billednavn." findes ikke <br>";
}
echo billeder_Delete($hellestrik, $liste[$i]['billedid']);
echo "<br>";
}
?>
den effektive, henter billednavne og sletter hver enkelt fil, og derefter rydder op i db i et hug
<?php
$liste = billeder_Read_Older_X_Days($hellestrik); // 7 er default parameter
for ($i = 0, $lng = count($liste); $i < $lng; $i++) {
$billednavn = $liste[$i]['billednavn'];
// testere om filen findes
if(file_exists("Uploads/".$billednavn)) {
echo "Sletter filen: " . $billednavn. "<br>";
// den findes, vi sletter
unlink("Uploads/".$billednavn;
}
else{
echo "filen "."Uploads/".$billednavn." findes ikke <br>";
}
}
echo billeder_Delete_Older_X_Days($hellestrik);
?>