Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/94.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上传图像脚本表单不';当我的客户是iOS的时候,我就不工作了_Php_Ios_Iphone - Fatal编程技术网

PHP上传图像脚本表单不';当我的客户是iOS的时候,我就不工作了

PHP上传图像脚本表单不';当我的客户是iOS的时候,我就不工作了,php,ios,iphone,Php,Ios,Iphone,我已经创建了一个文件上传表单脚本,但当我尝试将它与iPhone一起使用时,它不起作用 当我var\u dump代码时,我没有收到错误,或者错误代码0。如果我使用另一个平台,如Android、windowsphone或Desktop,它会成功上传文件 我的代码: $valid_formats = array("jpg", "png", "gif", "zip", "bmp"); $max_file_size = 1024*20000; //20 mb $path = $_SERVER['DOCUM

我已经创建了一个文件上传
表单
脚本
,但当我尝试将它与
iPhone
一起使用时,它不起作用

当我
var\u dump
代码时,我没有收到错误,或者
错误代码0
。如果我使用另一个平台,如
Android
windowsphone
Desktop
,它会成功上传文件

我的代码:

$valid_formats = array("jpg", "png", "gif", "zip", "bmp");
$max_file_size = 1024*20000; //20 mb
$path = $_SERVER['DOCUMENT_ROOT'].'/beta/images/'; // Upload directory
$count = 0;

if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST"){
    // Loop $_FILES to execute all files
    foreach ($_FILES['files']['name'] as $f => $name) {     
        if ($_FILES['files']['error'][$f] == 4) {
            continue; // Skip file if any error found
        }          
        if ($_FILES['files']['error'][$f] == 0) {              
            if ($_FILES['files']['size'][$f] > $max_file_size) {
                $message[] = "$name is too large!.";
                continue; // Skip large files
            }
            elseif( ! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats) ){
                $message[] = "$name is not a valid format";
                continue; // Skip invalid file formats
            }
            else{ // No error found! Move uploaded filesize
            $info = getimagesize($_FILES["files"]["tmp_name"][$f]);
            if ($info === FALSE) {
                die("Unable to determine image type of uploaded file");
            }
            if (($info[2] !== IMAGETYPE_GIF) && ($info[2] !== IMAGETYPE_JPEG) && ($info[2] !== IMAGETYPE_PNG)) {
                die("Not a gif/jpeg/png");
            }

                if(move_uploaded_file($_FILES["files"]["tmp_name"][$f], $path.time().'_'.$name))
                $count++; // Number of successfully uploaded file
            }
        }
    }
}
move\u upload\u file
函数
返回false
,因为
$count
变量保持
0

只有当我使用
iPhone
访问文件上传脚本时,它才不会上传

表格编号:

<form action="upload.php" method="post" enctype="multipart/form-data">
    <input id="file" type="file" name="files[]" multiple="multiple" accept="image/*"/><Note: Supported image format: .jpeg, .jpg, .png, .gif (Size up to 2mb)<input type="submit" value="Upload!" id="selectedButton"/>
</form>


我以前在iPhone上见过这种情况。图像名为xxx.JPG,我的代码正在检查文件扩展名,但它区分大小写

尝试将JPG添加到有效扩展列表中


如果失败,请将$\u文件的值写入文件,然后查看提交时收到的内容。

您在iOS应用程序上使用的代码是否与Android应用程序完全相同?如果没有,为什么不将代码添加到用于上传的iOS中?我没有使用应用程序。这是一个html表单。我不敢相信大写字母是个问题。废话,我花了好几个小时想弄明白,这似乎就是问题所在。