PHP 传递参数问题


php pass parameter issue

这是我的代码:

<?php
$lijstDoelmannen = mysql_query("SELECT * FROM Speler WHERE positie = 'Doelman' ORDER BY familienaam, voornaam");
$teller = 1;
while($rij = mysql_fetch_array($lijstDoelmannen))
{
    if($teller < 5){
        echo "<td><a href='spelerDetail.php?spelerId='" . $rij['id'] . "><img src='images/spelers/unknown.png' alt='' width='50' />
            <br /><br />" . $rij["id"] . " " . $rij['familienaam'] . " " . $rij['voornaam'] . "</a></td>";
    }
}
?>

问题是在超链接中参数 spelerId = 空格(未填写)。如果我回声$rij["id"],它给了我正确的价值。

您在href的错误位置有一个'

"...<a href='spelerDetail.php?spelerId='" . $rij['id'] . ">..."

这应该是:

"...<a href='spelerDetail.php?spelerId=" . $rij['id'] . "'>..."
<a href='spelerDetail.php?spelerId='" . $rij['id'] . ">

您需要移动撇号:

<a href='spelerDetail.php?spelerId=" . $rij['id'] . "'>

它当前正在结束链接,在添加变量之前。

你也可以做:

echo "<td><a href='spelerDetail.php?spelerId={$rij['id']}'
while($rij = mysql_fetch_array($lijstDoelmannen))
{
if($teller < 5){
    echo "<td><a href='spelerDetail.php?spelerId='" . $rij['id'] . "><img src='images/spelers/unknown.png' alt='' width='50' />
        <br /><br />" . $rij["id"] . " " . $rij['familienaam'] . " " . $rij['voornaam'] . "</a></td>";
}
}
?>

我更喜欢以这种方式编写上面的代码来避免这些类型的问题:

while($rij = mysql_fetch_array($lijstDoelmannen)){
if($teller < 5){ ?>
    <td><a href="spelerDetail.php?spelerId=<?php echo $rij['id'] ?>">
    <img src="images/spelers/unknown.png" alt="" width="50" />
    <br /><br /><?php echo $rij['id'] . " " . $rij['familienaam'] . " " . $rij['voornaam'] ?></a></td>
<?php }} ?>