我正在尝试从mysql'ptb_stats'中的表中提取信息。这是通过'user_id'特定的,以便网站的每个成员只能看到他们的统计数据。
到目前为止,所有发生的事情都是我在页面上回显图像并且拉出的信息只是说数组?
任何我出错的建议吗?
由于
这是功能:
function get_stats() {
global $connection;
global $_SESSION;
$query = "SELECT s.location, s.nationality, s.hobbies, s.role, s.friends, s.height, s.weight
FROM ptb_stats s
WHERE user_id = \'$profile_id\'";
$stats_set = mysql_query($query, $connection);
confirm_query($query, $connection);
return $stats_set;
}
这是获取数组:
<?php
$stats_set = get_stats();
while ($stats = mysql_fetch_array($stats_set)) {
?>
<table width="100%" border="0">
<tr>
<td width="13%"><?php echo "<img width=40px heigh=34px src=\"assets/img/icons/stats.png\"/>" ?></td>
<td width="25%"><?php echo " $stats"?> </td>
<td width="13%"><?php echo "<img width=40px heigh=34px src=\"assets/img/icons/stats.png\"/>" ?></td>
<td width="25%"><?php echo " $stats"?> </td>
<td width="13%"><?php echo "<img width=40px heigh=34px src=\"assets/img/icons/stats.png\"/>" ?></td>
<td width="20%"><?php echo " $stats"?> </td>
</tr>
<tr>
<td height="36"><?php echo "<img width=40px heigh=34px src=\"assets/img/icons/stats.png\"/>" ?></td>
<td><?php echo " $stats"?> </td>
<td><?php echo "<img width=40px heigh=34px src=\"assets/img/icons/stats.png\"/>" ?></td>
<td><?php echo " $stats"?> </td>
<td><?php echo "<img width=40px heigh=34px src=\"assets/img/icons/stats.png\"/>" ?></td>
<td><?php echo " $stats"?> </td>
</tr>
</table>
<?php
}
?>
答案 0 :(得分:1)
$ stats是一个包含所有结果的数组。您需要定义要显示的值:
<?php echo $stats['location']; ?>
此外,您应该像这样编写代码:
<?php
$stats_set = get_stats();
while ($stats = mysql_fetch_assoc($stats_set)) :
?>
<table width="100%" border="0">
<tr>
<td width="13%"><?php echo $stats['location']; ?></td>
</tr>
</table>
<?php endwhile; ?>
修改强>
您需要使用mysql_fetch_assoc
代替mysql_fetch_array
(或指定MYSQL_ASSOC
)
http://php.net/manual/fr/function.mysql-fetch-assoc.php