通过PDO准备语句从表中返回值数组

时间:2014-04-12 13:12:50

标签: php mysql arrays pdo

我在通过PDO从表中获取数据时遇到问题。出现以下代码,它应该获取一个关联数组,但它返回一个布尔值。

$pdo = new PDO('mysql:host=localhost;dbname=database', 'username', 'password');
$ps = $pdo->prepare("SELECT * FROM wp_users WHERE user_login = ?");
$ps->execute(array($_GET["user_login"]));
$result = $ps->fetch(PDO::FETCH_ASSOC);
      /*extract($result);*/

var_dump($result);

有人可以帮我理解如何从数据库中返回一组值吗?

编辑:这是实际工作的代码。但是,我试图将其分解以了解它是如何工作的,然后向表'wp_usermeta'添加第二个查询,然后学习如何进入下一步并加入表而不是运行2个查询。我的第一步它可以在转向更多代码之前查看代码的一小部分是如何工作的。

include ("theme/header-main.html");

    $pdo = new PDO('mysql:host=localhost;dbname=database', 'username', 'password');
    $ps = $pdo->prepare("SELECT * FROM wp_users WHERE user_login = ?");
    if (!empty($_GET["user_login"])) {
        $ps->execute(array($_GET["user_login"]));
    } else {
        header('location: index.php');
    }

    $result = $ps->fetch(PDO::FETCH_ASSOC);

    if (is_array($result)) {
        extract($result);

        include('TESTuser-content.php');

    } else {
        include('user-content-search.php');
    }

include ("theme/footer-main.html");

1 个答案:

答案 0 :(得分:0)

我是个白痴。 :)

代码正常运行,但我通过浏览器字符串传递了错误的字段名称。我当前的数据库使用'username'字段,其中WordPress使用'user_login'。我在代码中更改了此项,但仍在URL中使用以下字符串来尝试加载页面。 ?用户名= <强> __

很抱歉发布了此消息,但已完成的操作已完成。感谢所有想要帮助的人。我真的很感激。