自动删除选项

时间:2009-11-05 12:24:19

标签: php mysql

我是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);
?>

2 个答案:

答案 0 :(得分:4)

由于您使用的是mysql,因此您需要创建一个PHP脚本,该脚本将连接到您的数据库并删除超过15天的所有内容。

* nix:使用cron之类的工具每X小时运行一次该脚本,其中X是您操作的合理数字。

Windows:使用计划任务每​​X小时运行一次该脚本,其中X是您操作的合理数字。

答案 1 :(得分:0)

选项称为Cron作业。

在您的服务器中查看。

在服务器中设置持续时间。哪个服务器检查时间并处理您设置的功能。

自动删除记录。你必须发起一个活动。