如何在php中回显指定的数据形式的sql数据库

时间:2014-03-05 13:52:09

标签: php mysql

我需要打印来自用户表的用户名的数据,例如,需要携带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:";

?>

2 个答案:

答案 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之间的区别

mysql_fetch_assoc