来自Android的带有Json的Php webservice问题&;数据库

来自Android的带有Json的Php webservice问题&;数据库,php,json,web-services,Php,Json,Web Services,我正在制作一个Web服务,它从Android应用程序获取Json流量,并将其插入MySQL数据库。 我的应用程序没有导出错误(wich在Android studio的模拟器中运行),问题似乎是Web服务。 当我从应用程序导出数据并调用webservice时,我的数据库中没有任何内容 这是webservice代码 $hote='mysql:host=localhost;port=3306;dbname=gedimat'; $utilisateur='root'; $mot_passe=''; t

我正在制作一个Web服务,它从Android应用程序获取Json流量,并将其插入MySQL数据库。 我的应用程序没有导出错误(wich在Android studio的模拟器中运行),问题似乎是Web服务。 当我从应用程序导出数据并调用webservice时,我的数据库中没有任何内容

这是webservice代码

 $hote='mysql:host=localhost;port=3306;dbname=gedimat';
$utilisateur='root';
$mot_passe='';
try {
  $connexion = new PDO($hote, $utilisateur, $mot_passe);
  $connexion->exec("set names utf8");
  return $connexion;
}
catch(PDOException $e) {
  echo 'Erreur : '.$e->getMessage().'<br />';
  echo 'N° : '.$e->getCode();
  return null;
}

// récupération du flux JSON
$json = file_get_contents('php://input');
$obj = json_decode($json);

// insertion ou mise à jour des données dans la table Vote
$res = $obj->Votes;

foreach($res as $unVote) {
  $requete = 'INSERT INTO vote(idVote, numTicket, idImage, note, dateVote) VALUES(:idVote, :numTicket,:idImage,:note,:dateVote)';
  $prep = $connexion->prepare($requete);
  $prep->bindValue(':idVote', $unVote->{'idVote'}, PDO::PARAM_INT);
  $prep->bindValue(':numTicket',$unVote->{'numTicket'} , PDO::PARAM_STR);
  $prep->bindValue(':idImage', $unVote->{'idImage'}, PDO::PARAM_STR);
  $prep->bindValue(':note', $unVote->{'note'}, PDO::PARAM_STR);
  $prep->bindValue(':dateVote', $unVote->{'dateVote'}, PDO::PARAM_STR);
  $ok =$prep->execute();
如果你能帮我,我将不胜感激。
如果您需要更多信息,请咨询我;)

如果这只是一个包含对象的数组,那么循环是不必要的

$res = $obj->Votes[0];  // $res is now the object

$requete = 'INSERT INTO vote
                            (idVote, numTicket, idImage, note, dateVote) 
                    VALUES (:idVote, :numTicket, :idImage, :note, :dateVote)';
$prep = $connexion->prepare($requete);

$prep->bindValue(':idVote', $res->idVote, PDO::PARAM_INT);
$prep->bindValue(':numTicket',$res->numTicket, PDO::PARAM_STR);
$prep->bindValue(':idImage', $res->idImage, PDO::PARAM_STR);
$prep->bindValue(':note', $res->note, PDO::PARAM_STR);
$prep->bindValue(':dateVote', $res->dateVote, PDO::PARAM_STR);

$ok = $prep->execute();
如果数组中可能有多个对象,那么这应该适用于该数组中的一个或多个对象

// prep the query outside the loop
// this can be reused, so dont do it each time round the loop
// and save a lot of trips to and from the database server for
// unnecessary compiles of the same query
$requete = 'INSERT INTO vote
                        (idVote, numTicket, idImage, note, dateVote) 
                VALUES (:idVote, :numTicket,:idImage, :note, :dateVote)';

$prep = $connexion->prepare($requete);

foreach ($obj->Votes as $vote ) {

    $prep->bindValue(':idVote',     $vote->idVote, PDO::PARAM_INT);
    $prep->bindValue(':numTicket',  $vote->numTicket, PDO::PARAM_STR);
    $prep->bindValue(':idImage',    $vote->idImage, PDO::PARAM_STR);
    $prep->bindValue(':note',       $vote->note, PDO::PARAM_STR);
    $prep->bindValue(':dateVote',   $vote->dateVote, PDO::PARAM_STR);

    $ok = $prep->execute();
}

这就是你给我们看的所有数据,还是数组中有多个事件?数组中有多个事件,但只有一个,只是为了看看这是否有效。好的,根据我的回答修改了我的答案,谢谢,伙计
// prep the query outside the loop
// this can be reused, so dont do it each time round the loop
// and save a lot of trips to and from the database server for
// unnecessary compiles of the same query
$requete = 'INSERT INTO vote
                        (idVote, numTicket, idImage, note, dateVote) 
                VALUES (:idVote, :numTicket,:idImage, :note, :dateVote)';

$prep = $connexion->prepare($requete);

foreach ($obj->Votes as $vote ) {

    $prep->bindValue(':idVote',     $vote->idVote, PDO::PARAM_INT);
    $prep->bindValue(':numTicket',  $vote->numTicket, PDO::PARAM_STR);
    $prep->bindValue(':idImage',    $vote->idImage, PDO::PARAM_STR);
    $prep->bindValue(':note',       $vote->note, PDO::PARAM_STR);
    $prep->bindValue(':dateVote',   $vote->dateVote, PDO::PARAM_STR);

    $ok = $prep->execute();
}