session.upload_progress - 内部服务器错误

时间:2014-01-23 15:32:03

标签: php session

我对这三个文件有一个非常奇怪的问题:

up1.php -form添加文件

<?php session_start();?>
<form action="up2.php" method="POST" enctype="multipart/form-data">
<input type="file" name="nazwa" />
<input type="hidden" name="<?php echo ini_get("session.upload_progress.name"); ?>" value="plik" />
<input type="submit" name="nazwa" />
</form>

up2.php - 表单

<? session_start();
if(move_uploaded_file($_FILES['nazwa']['tmp_name'], 'up.jpg')) echo "wgrano plik";
?>

和up3.php告诉我转移:

<?php session_start();
$key = ini_get("session.upload_progress.prefix") .'plik';
var_dump($_SESSION[$key]);
?>

在我的php.ini中我换了一行:

session.upload_progress.cleanup=0;

当up1.php将表单发送到up2.php时出现错误:

内部服务器错误服务器遇到内部错误或配置错误,无法完成您的请求

并记录错误:

[xxx 2014] [错误] [客户端xxx],referer:xxx / upload1.php

[xxx 2014] [错误] [客户端xxx]脚本标头过早结束:upload2.php,referer:xxx / upload1.php

1 个答案:

答案 0 :(得分:0)

从问题中得出答案。我不赞成这一点。

错误是表单字段的排序很重要。上传进度输入字段必须位于上传文件输入字段之前。

正确的表格:

<form action="upload2.php" method="POST" enctype="multipart/form-data">
<input type="hidden" name="<?php echo ini_get("session.upload_progress.name"); ?>" value="plik" />
<input type="file" name="nazwa" />
<input type="submit" value="send" />
</form>

形式不正确:

<form action="upload2.php" method="POST" enctype="multipart/form-data">
<input type="file" name="nazwa" />
<input type="hidden" name="<?php echo ini_get("session.upload_progress.name"); ?>" value="plik" />
<input type="submit" value="send" />
</form>