beowlf 0 Denunciar post Postado Maio 29, 2015 Bom dia! Galerapreciso de uma ajudaestou fazendo um codigo e esta dando o seguinte erroDeprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\wamp\www\paineladm\classes\banco.class.php on line 26porem eu vi aqui nessa linha que no meu codigo esta correto porem nao sei que esta acontecendo INSERT INTO crm_usuarios (nome, email, login, senha, ativo, administrador, datacad) VALUES ('', '', '', '', '', '', '') Ocorreu um erro com os seguintes detalhes: public function conecta() { $this->conexao = mysql_connect($this->servidor, $this->usuario, $this->senha, TRUE) or die($this->trataerro(__FILE__, __FUNCTION__, mysql_errno(), mysql_error(), TRUE)); mysql_select_db($this->nomebanco) or die($this->trataerro(__FILE__, __FUNCTION__, mysql_errno(), mysql_error(), TRUE)); mysql_query("SET NAMES 'utf8'"); mysql_query("SET character_set_connection=utf8"); mysql_query("SET character_set_client=utf8"); mysql_query("SET character_set_results=utf8"); } public function inserir($objeto) { //insert into nome da tabela ($campo1, $campo2) values ($valor1, $valor2) $sql = "INSERT INTO " . $objeto->tabela . " ("; for ($i = 0; $i < count($objeto->campos_valores); $i++): $sql .= key($objeto->campos_valores); if ($i < (count($objeto->campos_valores) - 1)): $sql.= ", "; else: $sql .= ") "; endif; next($objeto->campos_valores); endfor; reset($objeto->campos_valores); $sql .= "VALUES ("; for ($i=0; $i < count($objeto->campos_valores); $i++): $sql .= is_numeric($objeto->campos_valores[key($objeto->campos_valores)]) ? $objeto->campos_valores[key($objeto->campos_valores)] : "'" . $objeto->campos_valores[key($objeto->campos_valores)] . "'"; if ($i < (count($objeto->campos_valores) - 1 )): $sql .= ", "; else: $sql .=") "; endif; next($objeto->campos_valores); endfor; echo $sql; //Descomente só para testes return $this->executaSQL($sql); } alguém pode me ajudar com esse problema? e o que eu posso fazer para solucionarfico no aguardo Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
Gabriel Heming 766 Denunciar post Postado Maio 29, 2015 O erro já informa o seu problema e sua solução: Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\wamp\www\paineladm\classes\banco.class.php on line Ou uma rápida lida no manual: WarningThis extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include: mysqli_connect() PDO::__construct() Enfim, essa é a solução para o seu problema. Compartilhar este post Link para o post Compartilhar em outros sites
beowlf 0 Denunciar post Postado Maio 29, 2015 Bom dia! Gabriel obrigado pelas informações eu nao sou muito bom em php poderia ser um pouco mais detalhista nas informações realmente estou muito confuso sobre o problema citado acima Atenciosamente Fabiano Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 29, 2015 funções mysql_* estão obsoletas desde o PHP 5.5. Prefira usar MySQLi ou PDO. Veja mais aqui: http://www.ultimatephp.com.br/php-por-que-nao-utilizar-funcoes-mysql Compartilhar este post Link para o post Compartilhar em outros sites
beowlf 0 Denunciar post Postado Maio 30, 2015 esse link nao funciona poderia dar um exemplo em cima do meu erro? com codigo Compartilhar este post Link para o post Compartilhar em outros sites
WictorP 9 Denunciar post Postado Maio 30, 2015 Bom, vamos lá... MySQL é uma biblioteca do PHP, assim como MySQLI e PDO, a biblioteca MySQL está obsoleta (inválida) a partir da versão 5.5 do PHP. Provavelmente teu APACHE está configurado para versões acima de 5.5, então logo a biblioteca MYSQL, não funciona... Então você terá que trocar MySQLI, oque não vai ser difícil , afinal você já usa direcionada à objetos. Conexão usando MySQL mysql_connect("HOST","USUARIO","SENHA",); mysql_select_db("CONEXÃO","db"); Conexão usando MySQLI $conecta = new mysqli("HOST","USUARIO","SENHA","BANCO"); Não tenho certeza em quanto ao exemplo de MySQLI se está correto. Mas é mais ou menos essa a idéia... haha Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 30, 2015 esse link nao funciona Ficou fora do ar, mas já voltou: http://www.ultimatephp.com.br/php-por-que-nao-utilizar-funcoes-mysql/ Compartilhar este post Link para o post Compartilhar em outros sites
WictorP 9 Denunciar post Postado Maio 31, 2015 Só mais uma coisa adicional. A biblioteca MySQLI também irá ficar obsoleta, por tanto aconselho aprender PDO... ;) Compartilhar este post Link para o post Compartilhar em outros sites