我需要打印来自用户表的用户名的数据,例如,需要携带HP,攻击,防御,黄金...我找到了这里有很多答案,在此之后我相信我已经离开了更多的问题。请帮忙......
<?php
session_start()
if(isset($_SESSION['username'])){
echo "Welcome {$_SESSION['username']}";
}
require_once 'config.php';
$conn = mysql_connect($dbhost,$dbuser,$dbpass)
or die('Error connecting to mysql');
mysql_select_db($dbname);
$query = sprintf("SELECT ID FROM users WHERE UPPER(username) = UPPER('%s')",
mysql_real_escape_string($_SESSION['username']));
$result = mysql_query($query);
list($userID) = mysql_fetch_row($result);
echo "Health Points:".$row['HP'];
echo "Attack:";
echo "Defence:";
echo "Gold:";
?>
答案 0 :(得分:0)
您必须查询实际需要的所有信息。所以你的查询应该是这样的:
SELECT HP,Atk,Def,Gold FROM ...
这将从您的数据库中检索命名字段,而不仅仅是ID。
另外,你永远不会分配你的行,它应该是
$row = mysql_fetch_row($result);
(但请参阅下面的评论)。
答案 1 :(得分:0)
1 - 缺少;在第一行
2 - 尝试“SELECT *”而不是“SELECT ID”
3 - $ row未定义,请尝试:
$row = mysql_fetch_assoc($result);
而不是
list($userID) = mysql_fetch_row($result);
查看手册,了解mysql_fetch_row和mysql_fetch_assoc之间的区别