2

I want add the new supports data via http post. Im getting an error response code is 500. I check code and php files i cant see any problem. And I dont complete code how i can get result after solve 500 error.

NewSupport.java

try{
    URL url = new URL("myurl/db_newSupport.php");

    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setReadTimeout(15000);
    conn.setConnectTimeout(15000);
    conn.setRequestMethod("POST");
    conn.setDoInput(true);
    conn.setDoOutput(true);

    Uri.Builder builder = new Uri.Builder()
            .appendQueryParameter("uniq",  "UNIQ")
            .appendQueryParameter("data",  "DATA")
            .appendQueryParameter("date",  "DATE");
    String query = builder.build().getEncodedQuery();

    OutputStream os = conn.getOutputStream();
    BufferedWriter writer = new BufferedWriter(
            new OutputStreamWriter(os, "UTF-8"));
    writer.write(query);

    writer.flush();
    writer.close();
    os.close();

    int responseCode=conn.getResponseCode();
    if (responseCode == HttpURLConnection.HTTP_OK) {
        BufferedReader in=new BufferedReader(new InputStreamReader(conn.getInputStream()));
        StringBuffer sb = new StringBuffer("");
        String line="";

        while((line = in.readLine()) != null) {

            sb.append(line);
            break;
        }

        in.close();
    }
}
catch(Exception e){
    e.printStackTrace();
}

db_newSupport.php

$response = array();
if (isset($_POST['uniq']) && isset($_POST['data']) && isset($_POST['date'])) {

    $uniq  = $_POST['uniq'];
    $data  = $_POST['data'];
    $date  = $_POST['date'];

    require_once __DIR__ . '/db_connect.php';
    $db    = new DB_CONNECT();
    $result= mysql_query("INSERT INTO new(uniq, data, date) VALUES('$uniq', '$data', '$date')");

    if ($result) {
        $response["code"]  = 1;
        $response["info"]  = "successfully";

        echo json_encode($response);
    } else {
        $response["code"]  = 0;
        $response["info"]  = "error";

        echo json_encode($response);
    }
} else {
    $response["code"] = 99;
    $response["info"] = "error";

    echo json_encode($response);
}
?>
Alex Klimashevsky
  • 2,457
  • 3
  • 26
  • 58
kibar
  • 822
  • 3
  • 17
  • 37

3 Answers3

3

This is a server-side problem.

  1. Enable PHP-errors : https://stackoverflow.com/a/845025/1979882

  2. Change POST method into GET in order to check the result is any browser to simplify debuggind.

3.Write resultant log here.

Look this: https://stackoverflow.com/a/9711595/1979882

and this: https://stackoverflow.com/a/9717056/1979882

in brief, execute this chmod -R 755 /usr/local/apache/htdocs/

Community
  • 1
  • 1
Vyacheslav
  • 26,359
  • 19
  • 112
  • 194
1

500 response code means server side crash. You should look at server logs for crash details.

Look at list of http status codes

Alex Klimashevsky
  • 2,457
  • 3
  • 26
  • 58
0

500 means internal server error.

Thing you are giving the relative path of your URL. Try giving the absolute path like "http://< your domain name>/db_newSupport.php".

Madhan
  • 555
  • 5
  • 23