我在PHP中使用var
传递queryString
,但它没有获取值
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);
答案 0 :(得分:0)
为什么不先试试?
<?php
echo $_GET['user_id'];
?>
这样就行了,所以你可以通过消除找到有问题的代码。
答案 1 :(得分:0)
尝试执行var_dump($_GET);
查看_GET数组中的内容。
您确定查询返回的内容为s.user_id = ali40
吗?
尝试查询结果的var_dump,或var_dump(mysql_errors());
以获取任何mysql错误
答案 2 :(得分:0)
$ user_id未设置。 设置此:
<?php
$user_id = $_REQUEST['user_id'];
// OR use Strict the super global GET
$user_id = $_GET['user_id'];
....