PHP从android应用程序中将空白行插入mysql表

时间:2015-04-22 22:20:07

标签: php android mysql json

我使用POST将我的设备中的Android应用程序中的json数据插入到计算机的xampp服务器中。它只是插入空列的行。当我使用GET从浏览器输入列时,只有当数据是数字和字母的混合时,它才会将其转换为数字。表列的类型是varbinary。我从浏览器输入“废话”,它在表格中以'63726170'的形式插入。我很困惑。这是插入数据的PHP代码。

if (isset($_POST)){
    //sanitize the input
    filter_var_array($_POST);
    $ri=$_POST['regID'];
    $id=json_decode($ri);
    //$decoid= $id->regID;
    if(is_array($id)){
    foreach ($id as $key=>$value){
        $fu=$id[$key];
        };
    }
    try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $sql = "INSERT INTO regids (regID)
    VALUES ('$fu')";
    // use exec() because no results are returned
    $conn->exec($sql);
    echo "New record created successfully";
        }
    catch(PDOException $e)
    {
    echo $sql . "<br>" . $e->getMessage();
    }
   }else{
        echo "Error executing query!!!";
    }    
    $conn = null;

我正在添加将数据发送到服务器的android代码

URL url;
                    HttpURLConnection urlConn;
                    DataOutputStream printout;
                    url = new URL ("myurlhere");
                    urlConn = (HttpURLConnection)url.openConnection();
                    urlConn.setDoInput (true);
                    urlConn.setDoOutput (true);
                    urlConn.setUseCaches (false);
                    urlConn.setRequestProperty("Content-Type","application/json");   
                    urlConn.setRequestProperty("Accept", "application/json");
                    urlConn.setRequestMethod("POST");
                    urlConn.connect();

                    /*List<NameValuePair> params = new ArrayList<NameValuePair>();
                    params.add(new BasicNameValuePair("regID", result));*/
                    String result = args.toString();
                    try{
                    //Create JSONObject here
                    JSONObject jsonParam = new JSONObject();
                    jsonParam.put("regID", result);
                    String postData="json="+jsonParam.toString();


                    // Send POST output.
                    printout = new DataOutputStream(urlConn.getOutputStream ());
                    printout.writeUTF(URLEncoder.encode(jsonParam.toString(),"UTF-8"));
                    Log.i("NOTIFICATION", "Data Sent");
                    printout.flush ();
                    printout.close ();

                    OutputStreamWriter os = new OutputStreamWriter(urlConn.getOutputStream(), "UTF-8");
                    os.write(postData);
                    Log.i("NOTIFICATION", "Data Sent");



                    BufferedReader reader = new BufferedReader(new InputStreamReader(urlConn.getInputStream())); 
                    String msg=""; 
                    String line = ""; 
                    while ((line = reader.readLine()) != null) {
                        msg += line; } 
                    Log.i("msg=",""+msg);

                    os.close();

0 个答案:

没有答案