queryString在PHP网站上不起作用


queryString not working on PHP site

我在PHP中使用queryString传递var,但它没有得到值

http://celeritas-solutions.com/emrapp/surveyDescription.php?user_id=ali40

$linkID = mysql_connect($host, $user, $pass) or die("Could not connect to host.");
mysql_select_db($database, $linkID) or die("Could not find database.");
if (!function_exists('json_encode'))
{
    function json_encode($a=false)
    {
        if (is_null($a)) return 'null';
        if ($a === false) return 'false';
        if ($a === true) return 'true';
        if (is_scalar($a))
        {
            if (is_float($a))
            {
                // Always use "." for floats.
                return floatval(str_replace(",", ".", strval($a)));
            }
            if (is_string($a))
            {
                static $jsonReplaces = array(array("''", "/", "'n", "'t", "'r", "'b", "'f", '"'), array('''''', '''/', '''n', '''t', '''r', '''b', '''f', ''"'));
                return '"' . str_replace($jsonReplaces[0], $jsonReplaces[1], $a) . '"';
            }
        else
            return $a;
        }
        $isList = true;
        for ($i = 0, reset($a); $i < count($a); $i++, next($a))
        {
            if (key($a) !== $i)
            {
                $isList = false;
                break;
            }
        }
        $result = array();
        if ($isList)
        {
            foreach ($a as $v) $result[] = json_encode($v);
            return '[' . join(',', $result) . ']';
        }
        else
        {
            foreach ($a as $k => $v) $result[] = json_encode($k).':'.json_encode($v);
            return '{' . join(',', $result) . '}';
        }
    } 
}
$user_id=$_GET['user_id'];
echo($user_id);
$query = mysql_query("SELECT s.*, u.user_id FROM survey_master AS s JOIN user_profile AS u on u.user_id = s.user_id where s.user_id='".$user_id."' ");
$rows = array();
while($row = mysql_fetch_assoc($query)) {
    $rows[] = $row;
}
echo json_encode($rows);
未设置$user_id。设置:
  <?php
   $user_id = $_REQUEST['user_id']; 
   // OR use Strict the super global GET
   $user_id = $_GET['user_id'];
   ....

为什么不先试试这个?

<?php
 echo $_GET['user_id'];
?>

这将起作用,因此您可以通过消除来找到有问题的代码。

尝试执行var_dump($_GET);以查看_GET数组中的内容。

您确定查询返回s.user_id = ali40吗?

也可以尝试查询结果的var_dump,或者var_dump(mysql_errors());来获取任何mysql错误