我从我的数据库中获取一个数字数组,然后打印出数组,但它只返回索引为0的值,即使其他索引的值也是,并且所有的playerName都设置为$ username 。请帮忙。感谢。
<?php
session_start();
$username = $_SESSION['username'];
$fetch = mysql_query("SELECT amount FROM playerDeck WHERE playerName = '$username'");
$count = mysql_num_rows($fetch);
$fetch = mysql_fetch_array(mysql_query("SELECT amount FROM playerDeck WHERE playerName = '$username'"));
while($count > 0){
$count--;
echo "$count";
echo "fetch$fetch[$count]</br>";
?>
结果:
13fetch
12fetch
11fetch
10fetch
9fetch
8fetch
7fetch
6fetch
5fetch
4fetch
3fetch
2fetch
1fetch
0fetch1
索引为0的数组返回数字1,但具有其他数字索引的数组返回值为null,即使数据库中的表中有数字,用户名设置为$ username。
答案 0 :(得分:0)
你必须为while
使用简单的mysql_fetch_array
循环,因为在没有循环的情况下使用它时,它会将结果行作为数组返回。
N.B:同时无需使用相同的查询两次计算结果。
mysql_fetch_array - 将结果行作为关联数组获取,a 数组或两者
见这里的例子
http://php.net/manual/en/function.mysql-fetch-array.php
编辑:希望它能为您效果,但不会经过测试。
<?php
session_start();
$username = $_SESSION['username'];
$fetch = mysql_query("SELECT amount FROM playerDeck WHERE playerName = '$username'");
$count = mysql_num_rows($fetch);
while($row=mysql_fetch_array($fetch,MYSQL_NUM)){
$count--;
echo "$count";
echo "fetch $row[0]</br>";
?>