GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Error Database DAO php

Tags: #<Tag:0x00007fa00d703820>

public function filtrarPorDescricao($descricao, $fields = null)

{

    $fields = $this->prepareFields($fields);

    

    $dbst = $this->db->prepare(" SELECT $fields FROM ". static::TABLE ." WHERE descricao ILIKE :descricao ");

    $dbst->bindValue(':descricao', $descricao, \PDO::PARAM_STR);

    return $this->execute($dbst);

}

protected function filtrar ($where, $whereValues, $fields = null)

{

    $fields = $this->prepareFields($fields);

    $order = null;

    if(!empty($this->order)) {

        $ords = [];

        foreach($this->order as $ord => $dir) {

            $ords[] = "{$ord} {$dir}";

        }

        $order = ' ORDER BY ' . implode(',', $ords);

    }

    $dbst   = $this->db->prepare(" SELECT {$fields} FROM ". static::TABLE ." WHERE {$where} {$order} ");

    if(is_array($whereValues) && !empty($whereValues)) {

        foreach ($whereValues as $param => $value) {

            if(strpos($value, ',') === false) {

                $typeParam = is_int($value) ? \PDO::PARAM_INT : \PDO::PARAM_STR;

                $dbst->bindValue(':'. $param, $value, $typeParam);

            } 

        }

    }

    return $this->execute($dbst);

}

public function getAll($limit = null)

{

    if(!empty($limit)) {

        $limit = ' LIMIT ' . (int)$limit;

    }

    

    $order = null;

    if(!empty($this->order)) {

        $ords = [];

        foreach($this->order as $ord => $dir) {

            $ords[] = "{$ord} {$dir}";

        }

        $order = ' ORDER BY ' . implode(',', $ords);

    }

    $fields = $this->prepareFields();

    return $this->execute($this->db->prepare(" SELECT $fields FROM " . static::TABLE ." {$order} {$limit} "));

}

public function order($column, $direction = 'ASC')

{

    if(!empty($column) && !empty($direction)) {

        $this->order[$column] = $direction;

    }

    return $this;

}

Qual erro ocorre?

Abraço.

Fatal error : Uncaught PDOException: could not find driver in C:\xampp\htdocs\calendario-melhorias-master\dao\Database.php:25 Stack trace: #0 C:\xampp\htdocs\calendario-melhorias-master\dao\Database.php(25): PDO->__construct(‘pgsql:dbname=me…’, ‘postgres’, ‘’) #1 C:\xampp\htdocs\calendario-melhorias-master\dao\Database.php(36): DAO\Database->__construct() #2 C:\xampp\htdocs\calendario-melhorias-master\views\inicio.php(5): DAO\Database::getInstance() #3 C:\xampp\htdocs\calendario-melhorias-master\index.php(51): require_once(‘C:\xampp\htdocs…’) #4 {main} thrown in C:\xampp\htdocs\calendario-melhorias-master\dao\Database.php on line 25

Está seguindo algum tutorial? Se sim, ele explica a parte de configuração do Postgre no php?

O erro diz que o driver não foi encontrado. Supondo que a instalação do Postgre está OK, verifique a configuração do driver do Postgre no php.ini, e teste com phpinfo().

Veja como em: https://mundodacomputacaointegral.blogspot.com/2018/12/integrando-o-postgresql-no-xampp.html

Abraço.

Olá boa noite tudo bem consegui mais deu este erro… Warning : require_once(views/inicioDatabase.php): Failed to open stream: No such file or directory in C:\xampp\htdocs\calendario-melhorias-master\index.php on line 53

Fatal error : Uncaught Error: Failed opening required ‘views/inicioDatabase.php’ (include_path=‘C:\xampp\php\PEAR’) in C:\xampp\htdocs\calendario-melhorias-master\index.php:53 Stack trace: #0 {main} thrown in C:\xampp\htdocs\calendario-melhorias-master\index.php on line 53

Como você está fazendo o require_once? Colocou views/inicioDatabase.php sem aspas/apóstrofos mesmo? O seu index.php está tentando localizar o views/inicioDatabase.php. Ele está no mesmo nível relativo ao index.php?

Este link tem uma ideia de como você pode trabalhar o path dos seus arquivos a partir da raiz, para facilitar as chamadas de require e require_once.

Abraço.

Captura%20de%20tela%202021-10-16%20131332 Captura%20de%20tela%202021-10-16%20131314

//