我有这段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;
}发布于 2016-01-12 09:09:31
第一件事是json_decode生成一个对象。第二件事是来自$data变量的值,所以我们使用$data->id从JSON获取id。我把它转换成像这个$id = (int)$data->id;这样的整数,并将它存储在一个新的变量中。现在,在查询中,您可以传递$id变量来获取行。
如果希望从$data变量中获得不同的值,则需要将$data->id更改为其他值。
<?php
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());
$id = (int)$data->id;
$datatwo = mysql_query("SELECT stock_account FROM Stock WHERE phone_id =$id") or die(mysql_error()) ;
$row = mysql_fetch_assoc($datatwo);
echo $row['stock_account'];
}在这里阅读更多信息:decode
json_decode -解码一个JSON字符串 Usage:混合json_decode ( string $json [,bool $assoc = false [,int $depth = 512,int $options =0 ]] )
https://stackoverflow.com/questions/34739282
复制相似问题