2009-11-05 118 views
-1

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

请编辑这篇文章,并使用'样本代码'格式化至少。 – rjstelling 2009-11-05 12:26:53

回答

4

既然你使用MySQL,你想创建一个PHP脚本,将连接到数据库,并删除所有超过15天以上。

* nix中:使用像cron工具来运行该脚本每隔X小时,其中X是为您的操作的合理数量。

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

0

选项称为Cron作业。

检查它在你的服务器上。

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

自动将它不会删除记录。你必须发起一个事件。