数据库Microsoft sql PHP中的搜索列

时间:2016-03-07 22:09:01

标签: php sql-server pdo

我已经制作了一个用于搜索我的网站的表单以及我试图使用的php代码看起来像这样

if (isset($_GET['search']))
{
$search = $_GET['search'];
$tsql5 = "SELECT * FROM blog_posts WHERE blog_title LIKE '%:search%'";
$stmt6 = $conn->prepare($tsql5);
$stmt6->execute (array($search));
while($search_result = $stmt6->fetch(PDO::FETCH_BOTH) )
{ 
echo '$search_result[0]'; 
and so on...

从我发现的所有例子中它应该有效吗?当我按下搜索按钮时,我会看到mysite.se/index.php?search=searchword

但是当我知道我正在搜索blog_title栏中存在的单词时,我得不到任何结果......我在这里遗漏了什么?

编辑:可能想使用microsoft sql server而不是mysql

添加即时通讯

1 个答案:

答案 0 :(得分:3)

您正在寻找像:search这样的东西,而不是您的实际用语。 (我认为这实际上会给占位符带来不匹配的绑定项的错误。)占位符需要独立存在。此外,绑定时需要在绑定中使用绑定名称。尝试:

$tsql5 = "SELECT * FROM blog_posts WHERE blog_title LIKE :search";
$stmt6 = $conn->prepare($tsql5);
$stmt6->execute (array(':search' => '%' . $search . '%'));