Here's a PHP version of the script that deletes messages in all folders named "spam" and that are at least 30 days old for mysql.

<?php
$link = mysql_connect('localhost:/var/lib/mysql/mysql.sock', 'dbmail', 'password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('dbmail', $link) or die('Could not select database.');

$qSelect = "SELECT message_idnr FROM
dbmail_messages m
JOIN dbmail_mailboxes b ON m.mailbox_idnr=b.mailbox_idnr
JOIN dbmail_physmessage p ON p.id=m.physmessage_id
WHERE p.internal_date < date_sub(now(), interval 30 day)
     AND b.name LIKE 'spam'";

$res = mysql_query($qSelect);

if (!$res) {
echo "Could not successfully run query ($qSelect) from DB: " . mysql_error();
   exit;
}

while($row = mysql_fetch_assoc($res))
{
$qUpdate = "UPDATE dbmail_messages SET deleted_flag=1, status=2 WHERE message_idnr=".$row['message_idnr'];
   mysql_query($qUpdate);
}
?>

Thanks everybody!

--
Aleksander Kamenik
system administrator
+372 6659 649
[EMAIL PROTECTED]

Krediidiinfo AS
http://www.krediidiinfo.ee/
_______________________________________________
DBmail mailing list
[email protected]
https://mailman.fastxs.nl/mailman/listinfo/dbmail

Reply via email to