有人可以帮我处理我的剧本吗?它应该读取用户的会话member_id
,找到相应的行并将其回显。但是当它运行时,它什么都不输出。
<?php
//Start session
session_start();
//Make sure user is logged in
require_once('auth.php');
//Include database connection details
require_once('config.php');
//Connect to DB
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if(!$link) {
die('Failed to connect to server: ' . mysql_error());
}
//Select database
$db = mysql_select_db(DB_DATABASE);
if(!$db) {
die("Unable to select database");
}
//Create Querys
$query = "SELECT * FROM stats WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "' ";
$result = mysql_query($query);
//Gather the whole row into an array
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
echo $row;
}
?>
答案 0 :(得分:3)
在mysql_query行之后立即删除echo mysql_num_rows($result);
,看看你是否从查询返回了任何结果 - 我怀疑你会发现你没有,在这种情况下,SESS_MEMBER_ID不存在于统计表。
答案 1 :(得分:1)
mysql_*()
个功能$row
是一个数组,所以回应它是没有意义的:PHP arrays,var_dump()
$_SESSION['SESS_MEMBER_ID']
有一些意想不到的价值?出现问题时进行基本调试 - 转储所有内容:
var_dump($query);
var_dump($result);
var_dump($_SESSION);
甚至更好:使用真正的调试器。
确保显示每个可能的错误 - PHP是一种非常奇怪的语言,它接受错误的音调并且仍然可以工作:
error_reporting(-1);
ini_set('display_errors', 'on');
btw:会话变量的SESS_
前缀有什么意义?