在Android中使用$ _GET请求从php获取JSON数据

时间:2015-10-06 09:37:04

标签: php android json get

这是我的PHP代码:

  $query = $sdb->prepare("SELECT * FROM `t_comments` WHERE `a_link` = ?");
    $query->bindValue(1, $_GET["link"]);
    $query->execute();

这是我在Android中的JSON请求:

JSONObject json = jParser.makeHttpRequest("http://serverip/json/getcomments.php?link=" + index, "GET", params);

实际上,如果我在Activity中删除链接请求,则此代码有效。 另外,如果我在PHP中将$_GET替换为ID,但index将在每个请求中更改。

解决: 我需要使用Params列表在里面添加GET参数 只需params.add(new BasicNameValuePair("STRING NAME", SOMETHING TO STORE));

即可

2 个答案:

答案 0 :(得分:1)

$query = $sdb->prepare("SELECT * FROM `t_comments` WHERE `a_link` = :link");
$query->bindValue(':link', $_GET["link"]);
$query->execute();

答案 1 :(得分:0)

From the documentation:

<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindValue(':calories', $calories, PDO::PARAM_INT);
$sth->bindValue(':colour', $colour, PDO::PARAM_STR);
$sth->execute();
?>

在您的代码中:

if(isset($_GET["link"])){
    $aVarName = $_GET["link"];
    $query->bindValue(1, $aVarName, PDO::PARAM_INT);
} else {
    // Some error or default value.
}