我有一个链接,当它被点击时调用下一页并且应该将两个varible传递给页面,第一个是Manu,第二个是fuel_type。
问题是我似乎无法获取代码来识别变量,而是传递美元符号和变量名称,而不是值。
代码如下,我尝试过几种不同的方式,但我的想法已经不多了。
.'<a href=\act/manufacturer.php?manufacturer=$manu&fuel_type=$fuel_type>'.$manu.'</a>'.
答案 0 :(得分:4)
首先,确保变量包含您想要的内容(来自超全局GET变量):
$manu = $_GET['manu'];
$fuel_type = $_GET['fuel_type'];
然后,您有两个选择:
使用双引号"
代替单引号,引号内的变量将被展开
"My dog is named $dog_name, and is $dog_age years old";
将单引号内的字符串与变量连接起来:
'My dog is named ' . $dog_name . ', and is ' . $dog_age . ' years old.';
绝对可以肯定,在使用或显示变量到浏览器之前,您要清理变量。至少,您希望删除任何HTML / JS代码,然后进行一些检查以确保结果具有您期望的类型和长度。有很多关于SO讨论如何做到这一点的问题,快速搜索 [php]清理GET变量会把它们搞砸。
答案 1 :(得分:2)
Single quotes do not parse variables,双引号。更改您的报价,您的链接应该正常工作。
示例:
."<a href=\act/manufacturer.php?manufacturer=$manu&fuel_type=$fuel_type>".$manu.'</a>'.
答案 2 :(得分:2)
你必须在'
之外插入var 像这样:.'<a href=\act/manufacturer.php?manufacturer='.$manu.'&fuel_type='.$fuel_type.'>'.$manu.'</a>'.
答案 3 :(得分:2)
单引号不允许解析变量,双引号可以。所以你最好做一些像:
"<a href=\act/manufacturer.php?manufacturer=$manu&fuel_type=$fuel_type>$manu</a>";
- 或者在你的情况下 -
'<a href=\act/manufacturer.php?manufacturer='.$manu.'&fuel_type='.$fuel_type.'>'.$manu.'</a>'
答案 4 :(得分:-1)
您可以将变量包装在花括号中以转义变量表达式:
'<a href=\act/manufacturer.php?manufacturer={$manu}&fuel_type={$fuel_type}>'.$manu.'</a>'.