Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数据没有通过截击发布到mysql数据库?_Java_Php_Android_Json_Android Volley - Fatal编程技术网

Java 数据没有通过截击发布到mysql数据库?

Java 数据没有通过截击发布到mysql数据库?,java,php,android,json,android-volley,Java,Php,Android,Json,Android Volley,我正在使用google的Volley库将数据发送到mysql数据库。我没有收到错误,但我的onResponse方法返回响应:{“msg”:false,“status”:false}有人能告诉我它的意思以及如何修复它吗 private void insertToDb(){ billType=(invEstSwitch.isChecked()?textViewEstimate:textViewInvoice) .getText().toString(); 试一试{ jsonObject.put(“c

我正在使用google的Volley库将数据发送到mysql数据库。我没有收到错误,但我的onResponse方法返回响应:{“msg”:false,“status”:false}有人能告诉我它的意思以及如何修复它吗

private void insertToDb(){
billType=(invEstSwitch.isChecked()?textViewEstimate:textViewInvoice)
.getText().toString();
试一试{
jsonObject.put(“custInfo”,custSelected.toString());
put(“invoiceNo”,textViewInvNo.getText().toString());
put(“条形码”,barcode.getText().toString());
put(“desc”,itemDesc.getText().toString());
put(“weight”,weightLine.getText().toString());
jsonObject.put(“rate”,rateMount.getText().toString());
jsonObject.put(“makingAmt”,makingAmount.getText().toString());
jsonObject.put(“net_rate”,netRate.getText().toString());
put(“itemTotal”,itemTotal.getText().toString());
put(“vat”,textViewVat.getText().toString());
put(“sum_total”,textViewSum.getText().toString());
jsonObject.put(“票据类型”,票据类型);
放置(“日期”,textViewCurrentDate.getText().toString());
}捕获(JSONException e){
e、 printStackTrace();
}
试一试{
itemSelectedJson.put(索引,jsonObject);
索引++;
}捕获(JSONException e){
e、 printStackTrace();
}
JSONObject jsonobj=新的JSONObject();
试一试{
put(“itemarray”,itemSelectedJson);
}捕获(JSONException e){
e、 printStackTrace();
}
final JsonObjectRequest objectRequest=新的JsonObjectRequest(Request.Method.POST,INVEST_URL,jsonobj,new Response.Listener()){
@凌驾
公共void onResponse(JSONObject响应){
Log.d(“RESPONSE”,RESPONSE.toString());
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
Log.d(“JSONERROR”,error.toString());
}
}){
@凌驾
公共映射getHeaders()引发AuthFailureError{
Map headers=newhashmap();
headers.put(“内容类型”、“应用程序/json;字符集=utf-8”);
headers.put(“接受”、“应用程序/json”);
返回标题;
}
};
final RequestQueue=Volley.newRequestQueue(this);
添加(objectRequest);
}
//我从onOptions ItemSelected(MenuItem item)调用此方法,如
案例R.id.action\u保存:
insertToDb();
返回true;
我想做的是 1) 将json数组发送到我的php脚本。 2) 解析json数组并 3) 将数据插入mysql表

这是我的php脚本

 <?php
          require "init.php";
          $json = file_get_contents('php://input'); 

          $data = json_decode($json);
          // Now process the array of objects
           foreach ( $data as $inv ) {
           $custInfo = $inv->custInfo;
           $rate =     $inv->rate;
           $weight=    $inv->weight;
           $desc=      $inv->desc;
           $makingAmt= $inv->makingAmt;
           $vat=       $inv->vat;
           $itemTotal= $inv->itemTotal;
           $sum_total= $inv->sum_total;
           $barcode=   $inv->barcode;
           $net_rate=  $inv->net_rate;
           $date=      $inv->date;
           $invoiceNo= $inv->invoiceNo;
           $bill_type= $inv->bill_type;
            $sql = "INSERT INTO selected_items 
                 (custInfo, invoiceNo, barcode, desc, 
                  weight, rate, makingAmt,net_rate,
                  itemTotal,vat,sum_total,bill_type,date) 
                VALUES
                 ('$custInfo','$invoiceNo','$barcode','$desc',
                  '$weight','$rate','$makingAmt','$net_rate',
                  '$itemTotal','$vat','$sum_total','$bill_type','$date')";
        $res = mysqli_query($sql,$con);
        echo $res;
        if(!$res){
            $result = new stdClass();
            $result->status = false;
            $result->msg = mysql_error();
            echo json_encode($result);
            exit;
        }
        }
        ?>

根据您的代码

$result->status = false;// you are only assigning false here
$result->msg = mysql_error();

没有错误,因此
msg
也是错误的。

您得到的错误是什么???@NiranjanNRaju我没有得到任何错误,它只是说响应:{“msg”:false,“status”:false};在logcat中。
$result->status=false$结果->消息=mysql_错误()
,您只在代码中添加了false,没有错误,因此
msg
也是false。@NiranjanNRaju感谢您指出这一点。您能告诉我如何解决这个问题吗?您想在什么基础上设置
状态
?您能告诉我如何检查json数组或json对象是否到达php代码基于什么基础,
msg
应包含值??成功插入时,应显示“数据插入成功”,即
echo$res给出??PHP警告:第10行/var/www/webapp/demoinvest.PHP中为foreach()提供的参数无效这是我得到的错误。实际上,我的PHP代码在google cloud vm上。因此,当我刚刚运行PHP代码时,我得到了这个错误。
$result->status = false;// you are only assigning false here
$result->msg = mysql_error();