在 URL 中发送一个 php 变量(get 方法)

Sending a php variable in URL(get method)

我想使用 get 方法发送一个值。代码是这样的

<td><a href="cart-remove.php?id={$row['id']}" class="remove_item_link"> Remove</a></td>

我要发送的这个值存储在 $row['id'] 中。这不是我的代码,它来自我的讲师(非常受欢迎的网站,到目前为止大约有 3 万人注册了该课程,但我不能在这里说出它们的名字),看这个

但如果我输入的内容与 he/she 完全一样,我会得到这个错误。



在 Whosebug 上找到这个 answer(自 2013 年起)。但是当我这样使用它时

<?php

$id=$_GET['id'];
echo "hey".$id;

我得到这样的输出hey{$row['id']}

这个我试过了,还是不行

<td><a href="cart-remove.php?id={$row[\'id\']}" class="remove_item_link"> Remove</a></td>

如何在购物车-remove.php 页面中获取此值?我从 this 问题中知道一些答案,但我试图让我的代码与我的讲师代码相似,因为他将对项目进行评级。另外,这个answer(上面提到的)来自同一个线程。

只有当这是带有双引号字符串的 echo 语句的一部分时,您的操作方式才有效。但是您是直接输出 HTML,而不是 echo,因此您不能使用字符串连接或替换。

您需要按照所有其他 $row 元素嵌入脚本前几行的方式执行此操作。

<td><a href="cart-remove.php?id=<?php echo $row['id']; ?>" class="remove_item_link"> Remove</a></td>

应题目作者的要求。 PHP 编译器将忽略代码中的所有普通 HTML 并原封不动地传递给网络浏览器,因此您需要打开 <?php 处理程序。

<td><a href="cart-remove.php?id=<?=$row['id']?>" class="remove_item_link"> Remove</a></td>

你的导师可能是指以下结论:

<?php echo "<td><a href='cart-remove.php?id={$row['id']}' class='remove_item_link'> Remove</a></td>"; ?>

但是,这只有在文本已经在 php 处理程序中时才有效

<td><a href="cart-remove.php?id=<?=$row['id']?>" class="remove_item_link"> Remove</a></td>