我试图从mysql表中过滤一些数据。
<?php
include ("connection.php");
$name = "cable";
$sql = "SELECT * FROM stock WHERE item LIKE '%$name%'";
?>
<a target="_blank" href="test2.php?link=<?php echo $sql; ?>" >click</a>
我尝试使用下一页的$ _GET [link]获取sql语句。 (test2.php)。这是来自TEST2.PHP的代码
<?php
include ("connection.php");
$link = $_GET['link'];
echo $link;
然后echo $链接显示了一个不同的值。它不显示“电缆”。相反,它显示
SELECT * FROM stock WHERE item LIKE 'Êble%'
你能告诉我为什么CABLE成了傻瓜吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
正如Ayyanar所说,是的,在SQL query
传递URL
并不是一个好主意。
但是,如果你仍然希望实现这一点,你可以做这样的事情:
TEST1.PHP
<?php
$name = "cable";
$sql = "SELECT * FROM stock WHERE item LIKE '%--$name--%'";
?>
<a target="_blank" href="test2.php?link=<?php echo $sql; ?>" >click</a>
TEST2.PHP
<?php
$link = $_GET['link'];
$link = str_replace(
array('%--', '--%'),
array('%', '%'),
$link
);
echo $link;
?>