java - 如何编写 JAVA CLASS 和 PHP API 来发布和读取现有 MySQL 数据库

标签 java php android mysql

我正在开发一个应用程序,它允许员工请求休假并从现有的 MySQL 数据库中读取数据。但我在弄清楚这整个代码部分(PHP、JAVA)中要修复的内容时遇到了一些麻烦。任何专家都可以告诉我如何解决这个问题吗?

这是我当前收到的错误消息

D/Create Response(284): {"message":"Required field(s) is missing","success":0}

请求 PHP API

<?php
// array for JSON response
$response = array();

// check for the fields
if (isset($_POST['title']) && isset($_POST['request_date']) && isset($_POST['reqEndDate']) && isset($_POST['reason']) && isset($_POST['requestor']) && isset($_POST['status']) && isset($_POST['submitDate']) && isset($_POST['explanation']) && isset($_POST['hours']) && isset($_POST['id'])) {

    $title = $_POST["request_title"];
    $date = $_POST["request_date"];
    $eDate = $_POST["reqEndDate"];
    $reason = $_POST["reason"];
    $requestor = $_POST["requestor"];
    $status = $_POST["status"]; 
    $dateSubmitted = $_POST["submitDate"];
    $explanation = $_POST["explanation"];
    $numhours = $_POST["hours"];
    $empid = $_POST['id'];


    // mysql inserting a new row
    $result = mysql_query("INSERT INTO requests(request_title, request_date, reqEndDate, reason, requestor, status, submitDate, explanation, hours, empid) 
                            VALUES('$title', '$date', '$eDate', '$reason', '$requestor', '$status', '$dateSubmitted', '$explanation', '$numhours', '$empid')");


} else {

    $response["success"] = 0;
    $response["message"] = "Required field(s) is missing";

    echo json_encode($response);
}
?>

请求 JAVA 类

            // Building Parameters
            List<NameValuePair> params = new ArrayList<NameValuePair>();
            params.add(new BasicNameValuePair("request_title", title));
            params.add(new BasicNameValuePair("request_date", date));
            params.add(new BasicNameValuePair("reqEndDate", eDate));
            params.add(new BasicNameValuePair("hours", hours));
            params.add(new BasicNameValuePair("reason", reason));
            params.add(new BasicNameValuePair("explanation", explanation));

            // getting JSON Object
            // Note that create request url accepts POST method
            JSONObject json = jsonParser.makeHttpRequest(url_create_request,
                    "POST", params);

            // check log cat fro response
            Log.d("Create Response", json.toString());

            // check for success tag
            try {
                int success = json.getInt(TAG_SUCCESS);

                if (success == 1) {
                    // successfully created request
                    Intent i = new Intent(getApplicationContext(), AllRequestsActivity.class);
                    startActivity(i);

                    // closing this screen
                    finish();
                } else {
                    // failed to create request
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }

            return null;
        }



    }
}

最佳答案

我认为错误消息具有很强的描述性。

PHP 代码中的第一个 if

在请求中包含所有必填字段。

关于java - 如何编写 JAVA CLASS 和 PHP API 来发布和读取现有 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11034423/

相关文章:

java - 找出特定字体中字符串的宽度

java - 使用 Double 以相反的顺序对 HashMap 进行排序

php - 生成唯一的 View ID

Android:从我的闹钟中减去分钟数

适用于 Android 的 Android 分析 sdk 不起作用

Java 连接到 WMQ 8

java - 一对多关系空指针异常

php - 将 MYSQL 查询从 for 循环中取出

php - Clickatell 阿拉伯语文本出现乱码

java - 高清设备上 2D android/java 游戏中的错误 FPS