使用json将字符串数组从php发送到android

时间:2015-08-19 07:08:53

标签: php json

我发送一个包含电话号码的字符串到php,其中php发送使用我的Android应用程序的所有号码,然后将用户发送回android。 这是php代码

<?php
    define('DB_HOST', 'localhost');
    define('DB_NAME', 'verification'); 
    define('DB_USER','root'); 
    define('DB_PASSWORD',''); 

    // 1. Create a database connection
    $connection = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD);
    if (!$connection) {
        die("Database connection failed: " . mysqli_error());
    }

    // 2. Select a database to use 
    $db_select = mysqli_select_db($connection, DB_NAME);
    if (!$db_select) {
        die("Database selection failed: " . mysqli_error());
    }

    $PhoneNum= $_POST["CN"];
    $i=1;
    $j=0;
    $friends = array();
    $Invite = array();
    foreach ($PhoneNum as $i=> $element){

        //or do whatever you need to do to that variable
        $query="SELECT Number FROM `user` WHERE Number=$element";
        $query_exec = mysqli_query($connection ,$query);
        $row=mysqli_num_rows($query_exec);
        if($row>0)
        {
            $friends["$j"]= $PhoneNum[$i];

            $j++;
        }
        else
        {
        ;
        }
    }
    echo (json_encode($friends));

?>

但这会产生以下错误:

  

mysqli_num_rows期望参数1为结果,boolean给定

P.S $PhoneNum不为空

2 个答案:

答案 0 :(得分:0)

您的查询很可能会返回错误。基于mysqli_query的文档,

  

对于SELECT,SHOW,DESCRIBE,EXPLAIN和其他返回结果集的语句,mysql_query()会在成功时返回资源,或者在出错时返回FALSE。

如果您的错误表明已给出布尔值,则可能会返回False。

答案 1 :(得分:0)

我自己解决了,谢谢大家的帮助

$query="SELECT Number FROM `user` WHERE Number=$element";
$query_exec = mysqli_query($connection ,$query);
if (!$query_exec)
{  echo mysql_error(); }
ELSE {
if(mysqli_num_rows($query_exec)>0)
{
$friends["$j"]= $PhoneNum[$i];

$j++;
}
else
{
;
}}
}