为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 php 和 Json 从表中删除数据?

如何使用 php 和 Json 从表中删除数据?

qq_遁去的一_1 2023-03-09 15:37:24
我试图在我的应用程序中添加一个删除帐户选项,但是当我尝试删除该帐户时,我没有从 Web 服务器获得响应。相反,我收到错误:org.json.JSONException: End of input at character 0 of我试图将请求方法更改为 DELETE 但是我不太熟悉 android 和数据库所以我不确定这是否可行。我不确定问题出在 php 还是 java 代码上,当我在 android studio 中运行调试器时,字符串响应返回:response: ""PHP:<?phpif($_SERVER['REQUEST_METHOD']=='POST'){$id = $_POST['id'];require 'conn.php';  $sql = "DELETE * FROM Patients WHERE patientID='$id'";if(mysqli_query($conn, $sql)){  $result['success'] = "1";  $result['message'] = "success";  echo json_encode($result);  mysqli_close($conn);} else {  $result["success"] = "0";  $result["message"] = "Error!";  echo json_encode($result);  mysqli_close($conn);}} ?>我希望吐司弹出并说帐户已删除,但我却收到顶部的错误消息。ps 这只是一个原型,所以我目前并不担心安全问题。
查看完整描述

1 回答

?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

无论问题是什么,我都会猜测并说if($_SERVER['REQUEST_METHOD']=='POST')是您问题的根源。


您的请求可能会被错误地发送到服务器,并且method不会被识别为POST可以解释""响应的原因,因为您没有提供在条件失败时应该发生的情况的替代方案。


发回一个错误的请求响应 ( 400),您将能够在您的 Java 代码中解决这个问题……PHP 很好。


if($_SERVER['REQUEST_METHOD']=='POST') { /* ... */ }

else {

  http_response_code(400);

  // exit('Bad request method.');

  // or for a json response:


  echo json_encode([

    'success' => "0",

    'message' => "Bad Request Method used."

  ]);

}

另外,我不得不说......安全应该始终是一个问题......只需要多几行代码就可以过滤用户请求,并通过准备好的语句使您的查询更加安全。这更多是习惯问题;有一天,您可能会在这里或那里忘记查询。


查看完整回答
反对 回复 2023-03-09
  • 1 回答
  • 0 关注
  • 74 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信