因此,我尝试通过从玩家表中获取我的玩家 ID 来填充下拉列表,同时与我的付款表共享相同的玩家 ID。
当我按如下方式输入查询时,它工作正常。
$sql = "SELECT playersID FROM players";
但是当我想将两个表连接在一起时,我得到一个空的下拉菜单。
<?php
include "dbconnect.php";
$sql = "SELECT players.playersID FROM players INNER JOIN Payments ON Payments.playersID = players.playersID";
if (!$result = mysql_query($sql, $conn))
{
die('Error in querying the database' . mysql_error());
}
echo "<br><select name = 'listbox' id = 'listbox' onclick = 'populate()'>";
while ($row = mysql_fetch_array($result))
{
$playersID = $row['playersID'];
$allText = "$playersID,";
echo "<option value = '$allText'> $playersID</option>";
}
echo "</select>";
mysql_close($conn); ?>
注意我以前从未做过 INNER JOIN,所以这可能是一个简单的问题。该代码的目的是将付款信息输入表单并将数据保存到数据表中。我想在付款表中显示玩家 ID,以显示该特定玩家为此产品付款。
干杯!
最佳答案
看起来您想要对付款表进行 LEFT OUTER JOIN 而不是内部联接,因为付款表尚未为所有玩家或任何玩家提供付款。
关于php - SQL 内连接问题(可能很容易修复),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28887059/