index.php:Uncaught Erreur: Appel à une fonction membre fetchAll() sur booléenne
$db = new Db();
$param = [':name' => 'Alex'];
$data = $db->sql('select * from test where name = :name',$param)->query();
var_dump($data);
et obtenir l'erreur:
Fatal error: Uncaught Error: Call to a member function fetchAll() on boolean
DB.php
public function sql($sql,array $params = null)
{
$sql = $this->connection->prepare($sql);
if($params){
foreach ($params as $key => $param) {
$sql->bindParam($key, $param);
}
}
$this->statement = $sql;
return $this;
}
public function query($type = 1)
{
$statement = $this->statement->execute();
return ($type == 1) ? $statement->fetchAll(static::$DB_FETCH) : $statement->fetch(static::$DB_FETCH);
}
Si Je cours dans la méthode sql(), execute() et fetch() les données à l'intérieur, il peut vraiment obtenir les données, mais mettre les execute() et fetch() à la méthode query(), obtenir l'erreur moi ssage, une idée? ;
'false' signifie que votre requête a échoué, utilisez http://php.net/manual/fr/pdostatement.errorinfo.php pour voir l'erreur. –
@u_mulder Je var_dump (déclaration) et got ture ./Applications/MAMP/htdocs/Test/Program/Component/Db.php:60:boolean true – Fan
Utilisez la fonction dans mon commentaire, __please__ –