PHP 使用 PDO 搜索数据库

标签 php mysql database search pdo

我认为这将是一个相当简单的任务,但当我现在尝试搜索“注意:xxxxxxxx.php 中的数组到字符串转换”时,我不断收到此错误。

我的代码非常简单,如下所示:

<?php
$content .= "<h1>Search for a comic</h1>";

$form_html = "<form action='' method='POST' >
    <fieldset><label>Name: <input type='text' name='search_title'  placeholder='Title'></label>
    </fieldset><fieldset>
    <input type='submit' value='Search' name='submit'>
    </fieldset>
</form>";

$content .= $form_html;

if(isset($_POST['submit'])){
    $input_search = $_POST['search_title'];

    $results = $link->prepare('SELECT * FROM Comic WHERE name LIKE ?');
    $results->execute(array('%'.$input_search.'%'));
    $all_results = $results->fetchAll();
    $content .= $all_results;

}
?>

我已经阅读了大量其他类似的问题,并尝试了几种不同的方法来做到这一点,但到目前为止还没有奏效。

更多信息。 $content 与我的索引相呼应,因此全部显示。 我的数据库有一个名为“漫画”的表,大约有 9 列,其中第二列是“名称”。我希望用户能够输入一个单词或完整的标题,并向他们显示包含该单词或标题的所有漫画列表(例如:我搜索“世界末日”或“原子骷髅”,然后搜索漫画“世界末日就在这里!”和“原子头骨的诅咒”)。

最佳答案

$results->fetchAll(); 返回结果集中剩余行的数组。不是字符串。因此, $content .= $all_results; 正在尝试将数组附加到字符串中。

您需要循环遍历它提供的数组中的每个项目,然后您可以对它们执行您想要的操作。

http://php.net/manual/en/pdostatement.fetchall.php可以帮助你。

关于PHP 使用 PDO 搜索数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43670643/

相关文章:

php - 通过 UNIX 套接字连接 Node.JS 和 PHP - EPIPE 写入错误

php - 存储 Zend 子类

php - Laravel 5.5 mailgun 不发送电子邮件 - 没有错误

php - 具体在mysql和php中搜索

javascript - 使用 Javascript 在选择框更改时显示 MySQL 列数据

php - 通过 SoapClient 连接到 eBay Trading API 抛出 'The web service eBayAPI is not properly configured or not found and is disabled' 异常

java - 没有 RPC 的 GWT 数据库访问

mysql - 消除 mysql 数据库查询中的重复项

mongodb - nosql:MongoDB、Cassandra 或数据仓库的替代方案

database - ActiveRecord 可以在迁移之外创建表吗?