Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么刷新页面后重新提交_Php_Submit_Refresh_Form Submit_Page Refresh - Fatal编程技术网

Php 为什么刷新页面后重新提交

Php 为什么刷新页面后重新提交,php,submit,refresh,form-submit,page-refresh,Php,Submit,Refresh,Form Submit,Page Refresh,为什么刷新页面后重新提交 去 并上传任何文件,但仅限于ext“gif”、“jpeg”、“jpg”、“png”、“zip”、“pdf”、“docx”、“rar”、“txt” 上传后点击F5按钮刷新页面 现在重新提交并重新上传文件 为什么? 我想在上传文件后禁用重新提交而不使用jquery <?php $allowedExts = array("gif", "jpeg", "jpg", "png", "zip", "pdf", "docx", "rar", "txt", "doc"); $te

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

并上传任何文件,但仅限于ext“gif”、“jpeg”、“jpg”、“png”、“zip”、“pdf”、“docx”、“rar”、“txt”

上传后点击F5按钮刷新页面

现在重新提交并重新上传文件

为什么?

我想在上传文件后禁用重新提交而不使用jquery

<?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("0123456789abcdefghijklmnopqrstuvwxyz", 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
}

    unset($_FILE); //add these two lines
    unset($_REQUEST);
?>

这是浏览器的一项功能。如果您发出POST请求并点击F5,浏览器将尝试重新提交POST请求,因此您的图像和表单数据将再次提交

一种解决方案是,您可以通过PHP作为GET请求刷新页面

header('Location: /yoururl'); // May use $_SERVER['REQUEST_URI'] ;)
exit;

这仅在未将任何内容发送到输出缓冲区时有效。命令后的退出对于停止脚本执行也非常重要。

这是浏览器的一项功能。如果您发出POST请求并点击F5,浏览器将尝试重新提交POST请求,因此您的图像和表单数据将再次提交

一种解决方案是,您可以通过PHP作为GET请求刷新页面

header('Location: /yoururl'); // May use $_SERVER['REQUEST_URI'] ;)
exit;

这仅在未将任何内容发送到输出缓冲区时有效。命令后退出对于停止脚本执行也非常重要。

唯一的方法是在上传文件后刷新页面。在移动上传的文件之后添加以下代码($上传的文件[“上传的文件”][“tmp\U名称”],$上传)

$page = "http://yoururl.com/upload.php?uploaded&url=".$uploaded;
$sec = "1";
header("Location: $page");
并在问题的PHP代码末尾添加以下代码:

if(isset($_GET['uploaded'])){
 $uploaded=$_GET['url'];
 echo '<a target="_blank" href="'.$uploaded.'">click</a>';
 echo '<h3>'.$uploaded.'</h3>';
}
if(设置($\u GET['upload'])){
$uploaded=$_GET['url'];
回声';
回显“”。$已上载。“;
}

这样,用户也会收到一条上传文件的消息。

唯一的方法是在上传文件后刷新页面。在移动上传的文件之后添加以下代码($上传的文件[“上传的文件”][“tmp\U名称”],$上传)

$page = "http://yoururl.com/upload.php?uploaded&url=".$uploaded;
$sec = "1";
header("Location: $page");
并在问题的PHP代码末尾添加以下代码:

if(isset($_GET['uploaded'])){
 $uploaded=$_GET['url'];
 echo '<a target="_blank" href="'.$uploaded.'">click</a>';
 echo '<h3>'.$uploaded.'</h3>';
}
if(设置($\u GET['upload'])){
$uploaded=$_GET['url'];
回声';
回显“”。$已上载。“;
}

因此,用户也将获得上传的文件消息。

阅读此内容也需要接受答案。阅读此内容也需要接受答案。问题是什么?你能告诉我你是怎么做的吗?有什么问题吗?你能告诉我你是怎么做的吗?