处理PHP帖子中的Mutil部分参数


Handle Mutil Part Param in PHP post

在android客户端中,我已经为http post请求设置了多个参数。(我制作安卓客户端和我的网络服务之间一定有连接。)

安卓代码:

Content-Disposition: form-data; name="password" Content-Type: text/plain 123

Content-Disposition: form-data; name="username" Content-Type: text/plain tuyenpx

Content-Disposition: form-data; name="file"; filename="studio.png" Content-Type: image/png Content-Transfer-Encoding: binary

["此处的数据,已写入连接的输出流"]

PHP代码:

 if (isset($_GET['username'])) {
        $userName = $_GET['username'];
    }
    if (isset($_GET['password'])) {
        $passWord = $_GET['password'];
    }
    move_uploaded_file($_FILES['file']['filename'], "uploads/" . $_FILES['file']['filename']);

  //  if (!($userName == '' && $passWord == '')) {
        $json = array("status" => TRUE, "username" => $userName,"password"=>$passWord);
        header('HTTP/1.1 200 OK', true, 200);
        response($json);
//    } else {
//        header('HTTP/1.1 400 Bad Request', true, 400);
//        header('Content-type: text/plain; charset = UTF8');
//        echo'invalid request , username or pass wo`enter code here`rd must not null';

问题:我在PHP代码中错了什么,为什么$_GET['username']总是返回null,我也尝试使用$_POST['username'],它也返回null。

谢谢你的帮助!

感谢您的光临,我在PHP服务器中解决了我的问题,在我的库中,正文末尾也缺少一个边界来完成输出流的编写。

$userName=$_POST['userName];$passWord=$_POST['passWord'];

if (is_uploaded_file($_FILES['file']['tmp_name'])) {
    $uploads_dir = './';
    $tmp_name = $_FILES['file']['tmp_name'];
    $pic_name = $_FILES['file']['name'];
    move_uploaded_file($tmp_name, $uploads_dir . $pic_name);
    $json = array("status" => TRUE, "msg" => "upload success","username"=>$userName,"password"=>$passWord);
    response($json);
} else {
    header('HTTP/1.1 400 Bad Request', true, 400);
}