php json对象无法转换为字符串

时间:2016-01-12 09:01:30

标签: php json

我有这段PHP代码,它应该接受从Android应用程序发送的数字,并在数据库中搜索相当于该数字的数字(在其他字段中)并将结果发送到Android应用程序。

但是我收到了这个错误:

  

类stdClass的对象无法在D:\ xampp \ htdocs \ \ b.php中转换为字符串

在这一行:

mysql_query(" select  stock_account from  Stock where  phone_id=   (string)$data ") 

这是完整的代码:

if( isset($_POST["json"]) )
{
    $data = json_decode($_POST["json"]);

    mysql_connect("localhost", "root", "password") or die(mysql_error());
    mysql_select_db("dbname") or die(mysql_error());

    $datatwo = mysql_query(" select  stock_account from  Stock where   id=   (string)$data ") or die(mysql_error()) ;  

    echo $datatwo;
}

1 个答案:

答案 0 :(得分:1)

第一件事是json_decode生成一个对象。 您想要的第二件事是来自finishAffinity(); android.os.Process.killProcess(android.os.Process.myPid()); 变量的值,因此我们使用$data从JSON获取id。我将它转换为像$data->id这样的整数并将其存储在一个新变量中。现在,在查询中,您可以传递$id = (int)$data->id;变量来获取行。

如果您想从$id变量中获取不同的值,则需要将$data更改为其他值。

$data->id

在此处阅读更多内容:http://php.net/json_decode

  

json_decode - 解码JSON字符串

     

用法混合json_decode(字符串$ json [,bool $ assoc = false [,int $ depth = 512 [,int $ options = 0]]])