mysql 返回一行_mysql数据检索只返回一行

在PHP中,使用自定义函数`injuryTable`和`sqlQuery`从MySQL数据库获取受伤球员及其伤病信息时遇到问题。虽然SQL查询在数据库查询工具中正常工作,但在PHP中遍历结果时,只显示了一行数据。`print_r`显示了应该有多行数据的数组。问题可能出在遍历和返回数据的方式上。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,很抱歉有一个很长的问题。。。但这让我头疼。任何帮助都会被广泛接受。

我编写了以下函数以从mysql数据库返回数据:

function injuryTable()

{

# get all players that are injured and their injuires...

$sql = "SELECT players.id, players.injury_id, players.pname, injuries_date.name, start_date, end_date

FROM players INNER JOIN injuries_date

ON injury_id = injuries_date.id";

$result = sqlQuery($sql);

return $result;

}

sqlQuery函数如下:

function sqlQuery($sql)

{

$products = array();

$link = dbConnect('localhost', 'root', '', 'umarrr');

$result = mysqli_query($link, $sql);

while ($row = mysqli_fetch_array($result))

{

$products[] = $row;

}

# return each row:

return $products;

#mysqli_close($link);

}

但是,当我尝试遍历结果时:它只返回一行:

$injury_table = injuryTable();

// make it more readable:

foreach ($injury_table as $table);

{

echo $table['pname'];

echo $table['name'];

echo $table['start_date'];

echo $table['end_date'];

}

我上面写的sql语句在mysql查询浏览器中工作得很好,那么有人知道这里可能有什么问题吗?

输出

print_r($injury_table)

Array ( [0] => Array ( [0] => 1 [id] => 1 [1] => 6 [injury_id] => 6 [2] => person [pname] => person [3] => wrist [name] => wrist [4] => 2008-11-21 [start_date] => 2008-11-21 [5] => 2010-11-11 [end_date] => 2010-11-11 ) [1] => Array ( [0] => 2 [id] => 2 [1] => 5 [injury_id] => 5 [2] => woman [pname] => woman [3] => neck [name] => neck [4] => 2009-11-12 [start_date] => 2009-11-12 [5] => 2010-09-09 [end_date] => 2010-09-09 ) [2] => Array ( [0] => 3 [id] => 3 [1] => 4 [injury_id] => 4 [2] => girl [pname] => girl [3] => groin [name] => groin [4] => 2010-11-27 [start_date] => 2010-11-27 [5] => 2010-12-01 [end_date] => 2010-12-01 ) [3] => Array ( [0] => 4 [id] => 4 [1] => 1 [injury_id] => 1 [2] => boy [pname] => boy [3] => achilles [name] => achilles [4] => 2010-02-01 [start_date] => 2010-02-01 [5] => 2010-03-23 [end_date] => 2010-03-23 ) [4] => Array ( [0] => 5 [id] => 5 [1] => 2 [injury_id] => 2 [2] => man [pname] => man [3] => toe [name] => toe [4] => 2010-01-01 [start_date] => 2010-01-01 [5] => 2010-02-02 [end_date] => 2010-02-02 ) )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值