我是PHP和Javascript的新手。
我上传的文件需要在15天后自动从数据库中删除。请任何人帮助我。
我正在使用以下代码进行上传:
<?php
$nid = 1;
$teaser = false;
// Load node
$node = node_load(array('nid' => $nid));
// Prepare its output
if (node_hook($node, 'view')) {
node_invoke($node, 'view', $teaser, false);
}
else {
$node = node_prepare($node, $teaser);
}
// Allow modules to change content before viewing.
node_invoke_nodeapi($node, 'view', $teaser, false);
// Print
print $teaser ? $node->teaser : $node->body;
$target_path = "../mts/sites/default/files/ourfiles/";
//$myfile = basename( $_FILES['uploadedfile']['name']);
$safe_filename = preg_replace(
array("/\s+/", "/[^-\.\w]+/"),
array("_", ""),
trim($_FILES['uploadedfile']['name']));
$target_path = $target_path.$safe_filename;
if(file_exists($target_path))
{
echo "<script language=\"javascript\">";
echo "window.alert ('File already exist')";
echo "//--></script>";
}
elseif(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "<script language=\"javascript\">";
echo "window.alert ('File uploaded succesfully');";
echo "//--></script>";
/*
echo "The file ". basename( $_FILES['uploadedfile']['name']).
" has been uploaded";
*/
}
$con = mysql_connect("localhost","mts","mts");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// Create table
mysql_select_db("mts", $con);
$ut=date("y-m-d @ h:i:s");
mysql_query("INSERT INTO mt_upload (FileName, FilePath,DateTime)
VALUES ('".$safe_filename."', '".$target_path.$safe_filename."',NOW())");
// Execute query
mysql_query($sql,$con);
mysql_close($con);
?>
答案 0 :(得分:4)
由于您使用的是mysql,因此您需要创建一个PHP脚本,该脚本将连接到您的数据库并删除超过15天的所有内容。
* nix:使用cron
之类的工具每X小时运行一次该脚本,其中X是您操作的合理数字。
Windows:使用计划任务每X小时运行一次该脚本,其中X是您操作的合理数字。
答案 1 :(得分:0)
选项称为Cron作业。
在您的服务器中查看。
在服务器中设置持续时间。哪个服务器检查时间并处理您设置的功能。
自动删除记录。你必须发起一个活动。