PHP中的文件上传:GPX

时间:2017-06-27 23:14:37

标签: php xml upload gpx

尝试使用PHP表格上传GPX(xml)文件。

形式:

<form enctype="multipart/form-data" action="upload_gpx.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="30000000" />
Upload  GPX File: <input name="file" type="file" />
<input type="submit" value="Send File" />

脚本:

$allowedExts = array("gps","xml","gpx");
$fileName="rk".".gpx"; 
$extension = end(explode(".", $_FILES["file"]["name"]));

if ((($_FILES["file"]["type"] == "text/gpx") ||($_FILES["file"]["type"] == "text/xml"))
    && ($_FILES["file"]["size"] < 50000000)
    && in_array($extension, $allowedExts))
{
    if ($_FILES["file"]["error"] > 0) {
        echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
    } else {
        echo "Upload: " . $_FILES["file"]["name"] . "<br>";
        echo "Type: " . $_FILES["file"]["type"] . "<br>";
        echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
        echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";

        if (file_exists("files/gpx/" . $_FILES["file"]["name"])) {
            move_uploaded_file($_FILES["file"]["tmp_name"], "files/gpx/" .$fileName);
            echo "Stored in: " . "files/gpx/" . $_FILES["file"]["name"];        
        } else {
            move_uploaded_file($_FILES["file"]["tmp_name"], "files/gpx/" .$fileName);
            echo "Stored in: " . "files/gpx/" . $_FILES["file"]["name"];
        }
    }
} else { 
    echo "Invalid file";
}

上传xml文件时工作正常,上传.gpx文件时,它只是转到“无效文件”回显。尝试更改“==”text / gpx“)”to“==”application / gpx“)”但结果相同。不知道如何正确上传.GPX文件?会有所帮助。

编辑:作为临时修复更改“($ _FILES [”file“] [”type“] ==”text / gpx“)”to“($ _FILES [”file“] [”type“] == “application / octet-stream”)“和工作。

0 个答案:

没有答案