Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Conexão com o banco de dados por meio da classe mysqli não funcionou

Estou tentando fazer a conexão co meu banco de dados como foi feito na video aula, usando a classe mysqli sei que existe a forma de fazer por meio de $conn = mysqli_connect($servername, $username, $password, $database); Mas acho que usando o paradigma de O.O. ficaria melhor, porém estou me deparando com este erro:

PHP Warning:  mysqli::__construct(): (HY000/2002): No such file or directory in /Applications/XAMPP/xamppfiles/htdocs/phpweb/connection.php on line 9

Warning: mysqli::__construct(): (HY000/2002): No such file or directory in /Applications/XAMPP/xamppfiles/htdocs/phpweb/connection.php on line 9
PHP Warning:  mysqli::set_charset(): Couldn't fetch mysqli in /Applications/XAMPP/xamppfiles/htdocs/phpweb/connection.php on line 10

Warning: mysqli::set_charset(): Couldn't fetch mysqli in /Applications/XAMPP/xamppfiles/htdocs/phpweb/connection.php on line 10

Meu código é esta no arquivo connection.php

<?php

$servidor = 'localhost';
$banco_de_dados = 'blog';
$usuario_bd = 'blogserver';
$pass_bd = 'blog';


$mysql = new mysqli($servidor, $usuario_bd, $pass_bd, $banco_de_dados);
$mysql->set_charset('utf8');


if ($mysql == TRUE) {
echo "conectado";
}
else {
  echo 'erro conexao';
}

Estou usando o XAMPP do MAC

1 resposta
solução!

O MySQLi já utilizado diretamente dessa forma é considerado inadequado por certas vezes ter bug's como estes ou então, falha de segurança. Mas, vamos a solução, rs. Na variável de host ou servidor, alterar para: "127.0.0.1". Se ainda não funcionar, tente acrescentar a porta ":3306".

Mas, de toda forma, sugiro aprender a fazer a conexão MySQL por meio de Programação Orientada a Objetos (PDO), não é tão difícil ou diferente do que está sendo utilizado. https://cursos.alura.com.br/course/php-pdo-banco-de-dados