在 PHP 中将变量插入 href 不起作用



为此苦苦挣扎了几个小时。按照我在网上找到的几个类似的例子,没有相同的情况,并且无法让它传递变量。我知道这是基本的,但只是学习。提前谢谢。

<?php
        foreach($arr as $r) {
            echo "<tr>";
            echo "<td>".$r['TimeStamp']."</td>";
            echo "<td>".$r['LocationName']."</td>";
            **echo "<td><a href='details_get.php?id='$r['Post_ID']>".$r['Title']."</a></td>";**
            echo "<td>".$r['Price']."</td>";
            echo "<td>".$r['Description']."</td>";
            echo "</tr>";
        }
        ?>

我添加了一个变量$id以使代码更清晰,更易于使用,但仍然无法传递值。

<?php
        foreach($arr as $r) {
            $id = $r['Post_ID'];
            echo "<tr>";
            echo "<td>".$r['TimeStamp']."</td>";
            echo "<td>".$r['LocationName']."</td>";
            echo "<td><a href='details_get.php?id='.$id.'>".$r['Title']."</a></td>";
            echo "<td>".$r['Price']."</td>";
            echo "<td>".$r['Description']."</td>";
            echo "</tr>";
        }
        ?>

终于让它工作了,但我不得不将我的 php foreach 循环和 html 分开,如这篇文章中所示。

        <?php foreach($arr as $r) : ?>                
            <tr>
                <td><?php echo $r['TimeStamp']; ?></td>
                <td><?php echo $r['LocationName']; ?></td>
                <td><a href="details_get.php?id=<?php echo $r['Post_ID']; ?>"><?php echo $r['Title']; ?></a></td>
                <td><?php echo $r['Price']; ?></td>
                <td><?php echo $r['Description']; ?></td>
            </tr>
        <?php endforeach; ?>
        **echo "<td><a href='details_get.php?id='$r['Post_ID']>".$r['Title']."</a></td>";**

此行应如下所示

echo <td><a href="details_get.php?id=".$r['Post_ID'].">".$r['Title']."</a></td>";

我认为您在$r['Post_ID']中缺少一个点。

如果你分享更多的信息,可能是我可以给你其他人的建议

最新更新