在android客户端中,我已经为http post请求设置了多个参数。(我做了 确定在android客户端和我的webservice之间有连接。)
Android代码:
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。
感谢您的帮助!
答案 0 :(得分:0)
感谢您的时间,我在我的PHP服务器中解决了我的问题,并且在我的库中也缺少一个边界,以完成写入输出流。
$ userName = $ _POST [' username']; $ passWord = $ _POST ['密码'];
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);
}