Fechando ou Reutilizando conexão com Mysql usando PDO - PHP
29/02/2016
0
"parecia bom demais pra ser verdade".
O problema agora é o seguinte, toda vez que eu tento executar um código meu me retorna este erro.
SQLSTATE[42000] [1226] User 'u968736533_doshe' has exceeded the 'max_user_connections' resource (current value: 3)
Isso acontece porque toda vez que faço alguma coisa com meu banco de dados eu utilizo uma função que criei para se conectar ao banco de dados.
segue o código da função.
function conexao(){ $var = array('host' => HOST,'usuario' => USER,'senha' => PASSWORD,'dbname' => BD,); $opcoes = array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'); try { @$con = new PDO("mysql:host=".$var['host'].";dbname=".$var['dbname'],$var['usuario'],$var['senha'], $opcoes); return $con; } catch(PDOException $e){ echo $e->getMessage(); die(); } }
Bom, para utilizar a função eu faço da seguinte forma.
conexao()->prepare($sql);
Mas agora eu estou na dúvida de como encerrar essa conexão ou mesmo como reaproveitar a mesma uma vez aberta, para que não haja várias conexões abertas de uma vez.
Alguém com uma ideia para ajudar?
Cleyton Caetano
Posts
29/02/2016
Claudio Lopes
29/02/2016
Cleyton Caetano
Ainda estou perdido sobre o que fazer com meu código! Todos os métodos de destruição que utilizei e pesquisei na internet não funcionaram!
29/02/2016
William
29/02/2016
Cleyton Caetano
Interessante seu código!
deixa eu entender, sua classe funcionaria com minhas funções normalmente? pelo que retorno a conexão PDO com a função conexao() para outras funções como InsertBD e UpdateBD, se eu fizer assim terei um resultado true no final das contas?
//usando seu código $conexao = new Conexao (); //usando na minha funcao $conexao->prepare($sql);
29/02/2016
William
/* Require no script contendo a classe */ require_once 'conexao.php'; /* Variável recebendo instância do objeto PDO */ $pdo = Conexao::getInstance(); $pdo->prepare($sql);
29/02/2016
Cleyton Caetano
/* Require no script contendo a classe */ require_once 'conexao.php'; /* Variável recebendo instância do objeto PDO */ $pdo = Conexao::getInstance(); $pdo->prepare($sql);
Entendi, vou reescrever meu código e volto a postar aqui o resultado!
Clique aqui para fazer login e interagir na Comunidade :)