• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1132
  • Last Modified:

'PHP_SELF' refresh

i use 'PHP_SELF' for file upload. it works fine ,but when i refresh the php page, it reloade the file again.

please help me.
<html>
<FORM enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<P> <input type="file" name="file"/>
<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
<INPUT type="submit" name="submit" value="UPLOAD"/>
</P>
</FORM>
</html>
<?php
 
   if(!empty($_POST['submit']))
{
 
$file_type = $_FILES['file']['type'];
$file_name = $_FILES['file']['name'];
 
 
$file_ext = strtolower(substr($file_name,strrpos($file_name,".")));
$FILE_MIMES = array('application/dbase','application/x-dbase','application/dbf','application/x-dbf','zz-application/zz-winassoc-dbf');
$FILE_EXTS = array('.dbf','.DBF');
 
 
 if (!in_array($file_type, $FILE_MIMES) && !in_array($file_ext, $FILE_EXTS) )
	{
echo "Sorry, $file_name($file_type) is not allowed to be uploaded.";
exit();
	}
$target_path = "uploads/";
$target_path = $target_path . basename( $_FILES['file']['name']);
$_FILES['file']['tmp_name'];
	if(move_uploaded_file($_FILES['file']['tmp_name'], $target_path))
{
 
    echo "The file ".  basename( $_FILES['file']['name']). " has been uploaded";
}
else
{
    echo "There was an error uploading the file, please try again!";
}
  }
 
?>

Open in new window

0
sudanshu
Asked:
sudanshu
  • 2
1 Solution
 
dereshCommented:
do a redirect to the same page after file has been downloaded.
You will lose info message after upload (refresh will be instant), so you may have put it in session to display after redirect.

add this after line 34 ( before the } ):

header("Location: ".$_SERVER['PHP_SELF']);
exit;

Open in new window

0
 
sudanshuAuthor Commented:
thanks  it works
0
 
dereshCommented:
np
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now