Print_r返回Array()的值

时间:2013-12-28 12:51:41

标签: php oop pdo

现在,我正在失去耐心哈哈:D

问题是,无论我尝试什么,我都无法解决问题。

在我的php代码中,我成功连接到数据库,通过ajax向它发送$ _POST变量,

毕竟,在$ result中我存储了:

$result = $q->fetchAll(PDO::FETCH_OBJ);

但之后我打电话给print_r:

print_r($result);

始终但我总是得到“Array()”。

1000次更改后,尝试了所有可能性,没有任何内容能够从表中获取数据。

可能出了什么问题?

代码如下:

<?php

$mov = (isset($_POST['movie'])) ? $_POST['movie'] : null;

if ($mov != null)
{
    $conn = new PDO('mysql:host=127.0.0.1;dbname=workstation', 'root', 'password');

    $q = $conn->prepare("SELECT * FROM movies WHERE name LIKE '%:mov%'");
    $q->bindValue(':mov', $mov, PDO::PARAM_STR);
    $q->execute();
    $r = $q->fetchAll(PDO::FETCH_OBJ);
    $c = $q->rowCount();

    print_r($r);
    echo $c;

    /*
     * $name = $r[$key]->name; // in foreach loop for all found...
     * there should be returned
     * $res .= '<div>'.$name.'</div>'
     */
}
else
{
    $result = 'Type query...';
}

echo $result;

1 个答案:

答案 0 :(得分:1)

$q = $dbh->prepare("SELECT nom, couleur FROM fruit");
$q->execute();

$result = $q->fetchAll(PDO::FETCH_ASSOC);
print_r($result);

可能你没有执行你准备好的声明,这就是为什么它给你空白数组。尝试它可能是有效的...把你的查询代替我的查询..