PHP如何将xml文件上传到服务器
我做了一个简单的函数:PHP如何将xml文件上传到服务器,php,xml,file-upload,Php,Xml,File Upload,我做了一个简单的函数: function get($field, $dir = 'dir/') { $file_tmp = $_FILES[$field]['tmp_name']; $file_name = $_FILES[$field]['name']; $file_size = $_FILES[$field]['size']; $ext = explode(".", $file_nam
function get($field, $dir = 'dir/') {
$file_tmp = $_FILES[$field]['tmp_name'];
$file_name = $_FILES[$field]['name'];
$file_size = $_FILES[$field]['size'];
$ext = explode(".", $file_name);
$ext = $ext[1];
if ($ext != 'xml') {
if (is_uploaded_file($file_tmp)) {
move_uploaded_file($file_tmp, $dir . $file_name);
echo "file:
$file_name size:
$file_size done !
";
} else {
echo "Possible file upload attack: ";
echo "filename '" . $file_tmp . "'.";
}
} else {
move_uploaded_file($file_tmp, $dir . $file_name);
echo "file:
$file_name size:
$file_size done !
";
}
}
函数将文件上载到服务器,例如.jpg、.gif,但当我尝试上载.xml时,出现了一些错误,文件无法上载。为什么会这样?像这样尝试,然后检查发生了什么:
function get( $field, $dir = 'dir/' )
{
$file_tmp = $_FILES[$field]['tmp_name'];
$file_name = $_FILES[$field]['name'];
$file_size = $_FILES[$field]['size'];
$ext = explode( ".", $file_name );
$ext = $ext[1];
if ( $ext != 'xml' ) {
if ( is_uploaded_file( $file_tmp ) ) {
move_uploaded_file( $file_tmp, $dir . $file_name );
echo "file: $file_name size: $file_size done ! ";
} else {
echo "Possible file upload attack: ";
echo "filename '" . $file_tmp . "'.";
}
} else {
if ( is_uploaded_file( $file_tmp ) ) {
move_uploaded_file( $file_tmp, $dir . $file_name );
echo "file: $file_name size: $file_size done !";
} else {
echo "There was a porblem, check error.log";
}
}
}
此外,wamp服务器上文件上传的默认限制是2MB,请尝试增加该值。不上传意味着什么?它不会出现在$\u文件中吗?你得到一个PHP错误?你有Apache错误吗?你完成了但文件不在那里?你能详细说明出了什么问题吗?对不起。。。是的,已经完成,但文件不在目录中。我发现有问题,请检查error.log。有什么问题吗?我不知道如何在WAMP serwer上检查这个。。。我转到wamp\logs,这里有POST/test/index.php HTTP/1.12001944。。。是否是?您确定您的配置中存在登录错误吗?此外,您的配置是否允许上载XML文件?您试图上载的XML文件有多大?是的。。。这就是问题所在,文件大小。XML有7,5 MB,对serwer的限制是2 MB。我改变了这个,现在可以了。感谢您的帮助: