2013-10-26 73 views
0

刷新php页面后重新提交 - 为什么刷新php页面后重新提交 - 为什么

为什么?

我不想在刷新后重新提交!

有帮助吗?

我试试更多解决方案

但是所有的解决方法都是无效的!

这是我的代码,

,如果你有解决方案

请..

编辑我的代码,以帮助我,

感谢。

这是我的表单代码

<form id="uploadedfile" name="uploadedfile" enctype="multipart/form-data" action="upload.php" method="POST"> 
<input name="uploadedfile" type="file" /> 
<input type="submit" value="upload" /> 
</form> 

这是upload.php的代码:

<?php 
$allowedExts = array("gif", "jpeg", "jpg", "png", "zip", "pdf", "docx", "rar", "txt", "doc"); 
$temp = explode(".", $_FILES["uploadedfile"]["name"]); 
$extension = end($temp); 
$newname = $extension.'_'.substr(str_shuffle(str_repeat("abcdefghijklmnopqrstuvwxyz", 7)), 4, 7); 
$imglink = 'attachment/attachment_file_'; 
$uploaded = $imglink .$newname.'.'.$extension; 
if ((($_FILES["uploadedfile"]["type"] == "image/jpeg") 
|| ($_FILES["uploadedfile"]["type"] == "image/jpeg") 
|| ($_FILES["uploadedfile"]["type"] == "image/jpg") 
|| ($_FILES["uploadedfile"]["type"] == "image/pjpeg") 
|| ($_FILES["uploadedfile"]["type"] == "image/x-png") 
|| ($_FILES["uploadedfile"]["type"] == "image/gif") 
|| ($_FILES["uploadedfile"]["type"] == "image/png") 
|| ($_FILES["uploadedfile"]["type"] == "application/msword") 
|| ($_FILES["uploadedfile"]["type"] == "text/plain") 
|| ($_FILES["uploadedfile"]["type"] == "application/vnd.openxmlformats-officedocument.wordprocessingml.document") 
|| ($_FILES["uploadedfile"]["type"] == "application/pdf") 
|| ($_FILES["uploadedfile"]["type"] == "application/x-rar-compressed") 
|| ($_FILES["uploadedfile"]["type"] == "application/x-zip-compressed") 
|| ($_FILES["uploadedfile"]["type"] == "application/zip") 
|| ($_FILES["uploadedfile"]["type"] == "multipart/x-zip") 
|| ($_FILES["uploadedfile"]["type"] == "application/x-compressed") 
|| ($_FILES["uploadedfile"]["type"] == "application/octet-stream")) 
&& ($_FILES["uploadedfile"]["size"] < 5242880) // Max size is 5MB 
&& in_array($extension, $allowedExts)) 
{ 
move_uploaded_file($_FILES["uploadedfile"]["tmp_name"], 
$uploaded); 
echo '<a target="_blank" href="'.$uploaded.'">click</a>'; 
echo '<h3>'.$uploaded.'</h3>'; 
} 
if($_FILES["uploadedfile"]["error"] > 0){ 
echo '<h3>Please choose file to upload it!</h3>'; // If you don't choose file 
} 
elseif(!in_array($extension, $allowedExts)){ 
echo '<h3>This extension is not allowed!</h3>'; // If you choose file not allowed 
} 
elseif($_FILES["uploadedfile"]["size"] > 5242880){ 
echo "Big size!"; // If you choose big file 
} 
?> 
+0

你可以添加你的表单,以便我们看到该动作。 –

+0

请你解释一下,我们不能帮你这样做! –

+0

我编辑它,看我的表格代码 – user2719452

回答

0

好,

每个窗体后提交后数据仍保留在会话中。 你可以通过这种方式来完成脚本。

方法1:

unset($_POST); 
unset($_FILES); 
unset($_REQUEST); 

或者,您CA做

header('Location:[YOUR URL]'); 

其中[YOUR URL]将是你想要的文件上传被处理后去的URL。

之后,所以提交的数据将不会再被保存。

+0

我试试看,这是无效的,编辑我的代码来帮助我请。 – user2719452