Jump to content

File Deletion through link?


andre1990

Recommended Posts

yeah, just either create a file called delete.php then add the query string with the id or filename or something, then use $_GET to get the unique.

 

or, in the same file, use an isset() to determine if delete is set in the url, eg: files.php?delete=1&id=19 then, in that if statement, put your deletion code.

 

to delete you can use:

unlink('/root/file/name/and/path/here.jpg');

 

 

 

<?php if(isset($_GET['delete']))
{
   unlink('/home/user/www/files/' . $_GET['file_name']);
}

<?php
ob_start();

session_start();

$extensions = array("jpg", "png","jpeg", "gif", "zip", "rar", "swf", "tiff", "bmp", "txt", "fla", "7z", "tar", "gz", "iso", "dmg", "mp3", "wav", "m4a", "aac", "doc", "docx", "xls", "rtf", "ppt", "bsd", "exe", "psd", "c4d", "pdf", "dwg", "max", "ipa", "vtf", "iam", "ipt", "flv", "scr");
$maxsize = 104288000;
$server = "http://www.andre1990.com";

$name = $_FILES['file']['name'];
$temp = $_FILES['file']['tmp_name'];
$size = $_FILES['file']['size'];

$random = md5(uniqid(rand(), true));
$random = substr($random, 0, 20);

if (!$name || !$temp || !$size)
{
   header("Location: index.php?feedback=Please select a file.");
   exit();
}

foreach ($_FILES as $file)
{
if ($file['tmp_name'] != null) 
{
$thisext1=explode(".", strtolower($file['name']));
$thisext=$thisext1[count($thisext1)-1];
  if (!in_array($thisext, $extensions))
  {
       header(sprintf("Location: index.php?feedback=The file extension \"%s\" is not allowed.", $thisext));
       exit();
  }
}
}

if ($size > $maxsize)
{
   header("Location: index.php?feedback=The file size is too large.");
   exit();
}

$destination = "Uploads/".$random;
mkdir($destination);
move_uploaded_file($temp, $destination."/".$name);

$final = $server."/".$destination."/".$name;

?>

<?php ob_start(); ?>

<!DOCTYPE html>
<html>
<head>
<title>File Uploaded!</title>
<link rel="stylesheet" href="style.css" type="text/css">
<link REL="SHORTCUT ICON" HREF="images/favicon.ico">
</head>
<body>
<div id="topbar">
	<div class="content">
		<div class="logo"><img src="images/logo.png" height="90"/></div>
	</div>
</div>
<div id="navbar">
	<ul>
		<li><a href="http://www.andre1990.com" id="active">Uploaded! Back Home?</a></li>
		<li><a href="http://www.andre1990.com/tos.php">TOS</a></li>
		<li><a href="http://www.andre1990.com/faq.php">FAQ</a></li>
		<li><a href="http://www.andre1990.com/contact.php">Contact Us</a></li>
		<li><a href="http://www.andre1990.com/donate.php">Donate</a></li>
	</ul>
</span>
</center>
<div id="main"><center>
     <div id="side1"><br><BR><BR>
<br /><strong>Uploaded!</strong><br />       
        <span class="small">
        <br />
        Direct download/view:<br />
        <input type="text" size="28" onClick=select() value="<?php echo $final; ?>" READONLY><p />
        Forum Code download/view:<br /><br />
        <input type="text" size="38" onClick=select() value="[url]<?php echo $final; ?>[/url]" READONLY><p />
Delete Link:<br><br>
<input type="text" size="38" onClick=select() value="[url]<?php echo ??? ?>[/url]" READONLY><p />
        <a href="index.php">Upload another file?</a>
        </span>	
			<div class="clear"></div></center>
		</div></CENTER>
<br><center><span class="small">© andre1990.</span></center>
<center><a href="http://www.facebook.com/pages/andre1990/186225441417890"><img src="images/facebook.ico"></a></center>
	</div>
	</div>
	<div class="clear"></div>
</div>
</body>
<html>

Apologies.

 

But to print the link to them in the first place,

 

Delete Link:<br /><br />
        <input type="text" size="38" onClick=select() value="<?php echo $server."/delete"."/".$destination."/".$name; ?>" READONLY><p />

 

Would that suffice? I wasn't following with header()

 

 

your problem is that you have not declared what $server and $destination are.

 

get rid of them. also, you cannot use http://www.andre.com you have to use the server root.

 

suspecting you are on a standard linux it would be /home/yourusername/www/Uploads/

if you dont know, then do a <?php echo phpinfo(); ?> or declare it relatively from the directory the script is in.

 

and you are using  @chmod( $entry, 0777 );

                @unlink( $entry ); incorrectly.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.