繁体   English   中英

如何在php中创建json对象

[英]How can I create a json object in php

我在android和php中工作。

我想从php程序返回一个json对象到android程序。

如果这些是数据库中的条目,则表明它工作正常。 但是,如果数据库中没有记录,则会出错。

我欢迎建议

我想像这样制作json对象([{“ id”:“ 5”}])

这是我的php程序:

    $server = "localhost";
    $username = "root";
    $password = "";
    $database = "mymusic";

    $con = mysql_connect($server, $username, $password) or die ("Could not connect: " . mysql_error());
    mysql_select_db($database, $con);
     $id=$_GET["id"];
     $pass=$_GET["password"];
    //$id='ram';
    //$pass='ram';
    $sql = "SELECT id FROM login where userid='$id' and password='$pass'";
    $result = mysql_query($sql) or die ("Query error: " . mysql_error());

    $records = array();
    if (mysql_num_rows($result)==0)
     {
      //what should i right here to make jsonobject like this:- ([{"id":"5"}])
       echo myjsono;
     }
     else
     {
       while($row = mysql_fetch_assoc($result)) 
       {
         $records[] = $row;
       }
       echo $_GET['jsoncallback'] . '(' . json_encode($records) . ');';
     }

    ?>

这样的事情怎么样:(用您自己的变量代替)

if (empty($row)){
$arr = array('success' => 'false');
} else {
$arr = array('success' => 'true');
}
echo json_encode($arr);

如果您希望您的android应用在未找到条件的情况下收到具有特殊ID的对象,我将返回以下内容:

{"id":"0"}

然后在您的android应用中检查id是否== 0,这将告诉您未找到任何记录。

对于我的问题,这是非常正确的解决方案:

$server = "localhost";
$username = "root";
$password = "";
$database = "mymusic";

$con = mysql_connect($server, $username, $password) or die ("Could not connect: " . mysql_error());
mysql_select_db($database, $con);
 $id=$_GET["id"];
 $pass=$_GET["password"];
//$id='ram';
//$pass='ram';
$sql = "SELECT id FROM login where userid='$id' and password='$pass'";
$result = mysql_query($sql) or die ("Query error: " . mysql_error());

$records = array();
if (mysql_num_rows($result)==0)
 {
  //  {"messages":{"message":[{"id":  "17","user": "Ryan Smith","text": "This is an example of JSON","time": "04:41"}]};}

  **echo '('.'['.json_encode(array('id' => 0)).']'.')';** //**note this**
 }
 else
 {
   while($row = mysql_fetch_assoc($result)) 
   {

     $records[] = $row;
   }
   mysql_close($con);
   echo $_GET['jsoncallback'] . '(' . json_encode($records) . ');';
 }

//mysql_close($con);

//echo $_GET['jsoncallback'] . '(' . json_encode($records) . ');';
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM