如何通过json发送数据

时间:2012-02-02 21:46:12

标签: php json curl

大家好,我一直在尝试使用cURL来发送和检索数据。

我是php的新手,因为这只是做了大约3周。

我已经从数据库设置了2个变量,当通过cURL从另一个站点调用时,它应该使用json发送它们但由于某种原因它不发送数据,

有人可以告诉我我做错了什么,一切正常,直到它到达json部分然后它什么也没做。

代码:

if(isset($_REQUEST['token'])){

$token = $_REQUEST['token'];
$url = $_REQUEST['www'];

$token = trim(htmlentities($token));
$safetoken = mysql_real_escape_string($token);
$url = trim(htmlentities($url));
$safeurl = mysql_real_escape_string($url);

$checkwebsite = "SELECT message,islive FROM websitetokens WHERE url='".$safeurl."' AND token='".$safetoken."'";
$checkwebsite_result = mysql_query($checkwebsite) OR die();
$numberofrows = mysql_num_rows($checkwebsite_result);

if($numberofrows > 0){

    $website = mysql_fetch_array($checkwebsite_result);
    $message = stripslashes($website["message"]);
    $islive = stripslashes($website["islive"]);

    json_encode(array('message' => $message,'islive' => $islive,));

    $date = date('Y-m-d');
    $time = gmdate('H:i');

    $loginwebsite = "UPDATE websitetokens SET loggedin='".$date."',time='".$time."' WHERE url='".$safeurl."' AND token='".$safetoken."'";
    $loginwebsite_result = mysql_query($loginwebsite) OR die(mysql_error());

} else {

    json_encode(array('message' => '','islive' => '1',));

}

}

由于

3 个答案:

答案 0 :(得分:1)

json_encode()返回数据,它不输出,尝试使用

echo json_encode(...);

代替。

答案 1 :(得分:0)

json_encode返回一个包含JSON格式数据的字符串。向这些行添加回声(即echo json_encode(array(...)

答案 2 :(得分:0)

如果您echo json_encode的结果,则会有输出。此外,如果您设置输出的内容类型也是明智的:

header("Content-Type:application/json");
echo json_encode(array('message' => '','islive' => '1',));