解析数据org.json.JSONException时出现另一个错误:Value<;!无法将java.lang.String类型的DOCTYPE转换为JSONObject
我对这件事非常生气。我可以使用相同的代码(除了INSERT into命令)写入数据库,但这不起作用 PHP:解析数据org.json.JSONException时出现另一个错误:Value<;!无法将java.lang.String类型的DOCTYPE转换为JSONObject,java,php,json,Java,Php,Json,我对这件事非常生气。我可以使用相同的代码(除了INSERT into命令)写入数据库,但这不起作用 PHP: $id = $_POST['id']; //$id = '000000000002'; $uri = $_POST['uri']; //$uri='sdfgdsfg'; try { $stmt = $conn->prepare("UPDATE USERS SET PHOTO=? WHERE ID=?"); $stmt->execute(array($uri,
$id = $_POST['id'];
//$id = '000000000002';
$uri = $_POST['uri'];
//$uri='sdfgdsfg';
try {
$stmt = $conn->prepare("UPDATE USERS SET PHOTO=? WHERE ID=?");
$stmt->execute(array($uri, $id));
$response["success"] = 1;
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
$response["success"] = 0;
}
echo json_encode($response);
try {
paramsC = new ArrayList<NameValuePair>();
paramsC.add(new BasicNameValuePair("id", userid));
paramsC.add(new BasicNameValuePair("uri", "hello"));
JSONParser jsonParser; jsonParser = new JSONParser();
JSONObject json = jsonParser.makeHttpRequest(set_profile_photo_uri, "POST", paramsC);
try {
int success = json.getInt("success"); //error points to this line
if (success == 1) {
// successfully updated
Log.d("SIGNUP", "success");
} else {
Log.d("SIGNUP", "fail");
}
}catch(JSONException e){
//Log.e("log_tag", "Error parsing data "+e.toString());
//Log.e("log_tag", "Failed data was:\n");
}
} catch (Exception e) {
e.printStackTrace();
}
try {
$stmt = $conn->prepare("INSERT INTO USERS (USERNAME, PASSWORD, NAME, EMAIL, GENDER, DATEOFREG_PHONE, DATEOFREG_SV) VALUES
(:username, :password, :name, :email, :gender, :dateofreg_phone, :dateofreg_sv)");
$query_params = array(
':username' => $username,
':password' => $password,
':name' => $name,
':email' => $email,
':gender' => $gender,
':dateofreg_phone' => $dateofreg_phone,
':dateofreg_sv' => $dateofreg_sv
);
$stmt->execute($query_params);
$response["success"] = 1;
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
$response["success"] = 0;
}
echo json_encode($response);
JAVA:
$id = $_POST['id'];
//$id = '000000000002';
$uri = $_POST['uri'];
//$uri='sdfgdsfg';
try {
$stmt = $conn->prepare("UPDATE USERS SET PHOTO=? WHERE ID=?");
$stmt->execute(array($uri, $id));
$response["success"] = 1;
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
$response["success"] = 0;
}
echo json_encode($response);
try {
paramsC = new ArrayList<NameValuePair>();
paramsC.add(new BasicNameValuePair("id", userid));
paramsC.add(new BasicNameValuePair("uri", "hello"));
JSONParser jsonParser; jsonParser = new JSONParser();
JSONObject json = jsonParser.makeHttpRequest(set_profile_photo_uri, "POST", paramsC);
try {
int success = json.getInt("success"); //error points to this line
if (success == 1) {
// successfully updated
Log.d("SIGNUP", "success");
} else {
Log.d("SIGNUP", "fail");
}
}catch(JSONException e){
//Log.e("log_tag", "Error parsing data "+e.toString());
//Log.e("log_tag", "Failed data was:\n");
}
} catch (Exception e) {
e.printStackTrace();
}
try {
$stmt = $conn->prepare("INSERT INTO USERS (USERNAME, PASSWORD, NAME, EMAIL, GENDER, DATEOFREG_PHONE, DATEOFREG_SV) VALUES
(:username, :password, :name, :email, :gender, :dateofreg_phone, :dateofreg_sv)");
$query_params = array(
':username' => $username,
':password' => $password,
':name' => $name,
':email' => $email,
':gender' => $gender,
':dateofreg_phone' => $dateofreg_phone,
':dateofreg_sv' => $dateofreg_sv
);
$stmt->execute($query_params);
$response["success"] = 1;
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
$response["success"] = 0;
}
echo json_encode($response);
当我将PHP代码输入浏览器时,它可以正常工作。从注释中回答以结束此问题:确保您将查询发送到正确的URL。我将查看HTTP响应包含的内容。看起来您正在尝试将HTML解析为JSON。令人惊讶的是,HTML不是JSON。我的代码中根本没有HTML。您的服务器使用HTML页面而不是JSON进行响应。只要看看你的错误信息。。。