Java AsyncTask NameValuePair未发送值

Java AsyncTask NameValuePair未发送值,java,php,android,mysql,asynchronous,Java,Php,Android,Mysql,Asynchronous,我正在Android Studio中使用AsyncTask向PHP文件发送值。 我创建一个ArrayList,然后用nameValuePairs添加我的值。添加并将它们发送到我的PHP文件,该文件执行对MySQL数据库的请求。 对于前四个值,它工作得非常好,但是下一个值没有发送,我也找不到原因,因为它与前四个值的结构完全相同。 当我尝试添加“pa”参数时,数据库中没有添加任何内容 这里我调用我的函数(参数包含正确的值): 在这里,我在数组中添加值并发送它们 public class DbConn

我正在Android Studio中使用AsyncTask向PHP文件发送值。 我创建一个
ArrayList
,然后用
nameValuePairs添加我的值。添加
并将它们发送到我的PHP文件,该文件执行对MySQL数据库的请求。
对于前四个值,它工作得非常好,但是下一个值没有发送,我也找不到原因,因为它与前四个值的结构完全相同。
当我尝试添加“pa”参数时,数据库中没有添加任何内容

这里我调用我的函数(参数包含正确的值):

在这里,我在数组中添加值并发送它们

public class DbConnect extends AsyncTask<String, Void, String> {

    protected String doInBackground(String... param) {

        ArrayList<NameValuePair> nameValuePairs = new ArrayList<>();

        nameValuePairs.add(new BasicNameValuePair("sexe", param[0].toString()));
        nameValuePairs.add(new BasicNameValuePair("age", param[1].toString()));
        nameValuePairs.add(new BasicNameValuePair("formule", param[2].toString()));
        nameValuePairs.add(new BasicNameValuePair("base", param[3].toString()));
        nameValuePairs.add(new BasicNameValuePair("pa", param[4].toString()));

        try {
            HttpClient client = new DefaultHttpClient();
            HttpPost httppost = new HttpPost("http://10.0.2.2/AppBdd.php");
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            client.execute(httppost);
        } catch (Exception e) {
            Log.e("log_tag", "Error in http connection " + e.toString());
        }

        return null;
    }

}
公共类DbConnect扩展异步任务{
受保护的字符串doInBackground(字符串…参数){
ArrayList nameValuePairs=新的ArrayList();
添加(新的BasicNameValuePair(“sexe”,参数[0].toString());
添加(新的BasicNameValuePair(“年龄”,参数[1]。toString());
添加(新的BasicNameValuePair(“公式”,参数[2].toString());
添加(新的BasicNameValuePair(“base”,param[3].toString());
添加(新的BasicNameValuePair(“pa”,参数[4].toString());
试一试{
HttpClient=new DefaultHttpClient();
HttpPost HttpPost=新的HttpPost(“http://10.0.2.2/AppBdd.php");
setEntity(新的UrlEncodedFormEntity(nameValuePairs));
执行(httppost);
}捕获(例外e){
e(“Log_标记”,“http连接错误”+e.toString());
}
返回null;
}
}
我用PHP获取值并执行我的函数,该函数应该将它们添加到我的数据库中:

<?php
require_once ("rees.php");

$pdo = PdoGsb::getPdoGsb();


$sexe = $_REQUEST['sexe'];
$age = $_REQUEST['age'];
$form  = $_REQUEST['formule'];
$base = $_REQUEST['base'];
$pa  = $_REQUEST['pa'];

$pdo->setClient($sexe, $age, $form, $base, $pa);

我不太擅长web连接,但请求密钥和BasicNameValuePair不应该具有相同的密钥(一个是'pa'和一个是'p1')是的,我的错误未命中编辑,密钥到处都是'pa'
<?php
require_once ("rees.php");

$pdo = PdoGsb::getPdoGsb();


$sexe = $_REQUEST['sexe'];
$age = $_REQUEST['age'];
$form  = $_REQUEST['formule'];
$base = $_REQUEST['base'];
$pa  = $_REQUEST['pa'];

$pdo->setClient($sexe, $age, $form, $base, $pa);
<?php 

class PdoGsb{
    private static $serveur='mysql:host=localhost';
    private static $bdd='dbname=testdepeau';        
    private static $user='root';
    private static $mdp='';
    private static $monPdo;
    private static $monPdoGsb=null;

    private function __construct(){
        PdoGsb::$monPdo = new PDO(PdoGsb::$serveur.';'.PdoGsb::$bdd, PdoGsb::$user, PdoGsb::$mdp); 
        PdoGsb::$monPdo->query("SET CHARACTER SET utf8");
        PdoGsb::$monPdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }

    public function __destruct(){
        PdoGsb::$monPdo = null;
    }

    public  static function getPdoGsb(){
        if(PdoGsb::$monPdoGsb==null){
            PdoGsb::$monPdoGsb= new PdoGsb();
        }
        return PdoGsb::$monPdoGsb;  
    }

    public function setClient($sexe, $age, $form, $base, $pa){
        $req="INSERT INTO client (formule, sexe, age, base, pa)
         VALUES
         ('$form', '$sexe', '$age', '$base', '$pa');";
         $res2= PdoGsb::$monPdo->exec($req);
    }

}
?>