Jump to content
Laura Mattioni

Erro ao conectar SQL ao banco de dados Xampp

Recommended Posts

Boa noite,

Estou enfrentando problemas ao conectar ao banco de dados com o Xampp. 

Abaixo meu código para análise.

<?php

$host = "localhost";
$user = "root";
$pass = "";
$base = "help_pet";
 
 error_reporting(E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
 
if (!(mysqli_connect($host,$user,$pass))) {
 
 echo "Erro! Host, usuário ou senha do MYSQL incorreta";
 exit;
}
 if (!(mysqli_select_db($base))) {
  echo "Erro! Banco de dados não acessível.";
  exit;
 }
 mysqli_query("SET NAMES 'utf8'");
?>

Share this post


Link to post
Share on other sites

Olá,

Aparece alguma mensagem de erro? Qual?

Share this post


Link to post
Share on other sites
Agora, leomarriel disse:

Olá,

Aparece alguma mensagem de erro? Qual?

Warning: mysqli_select_db() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\helppet\conexao.php on line 19
Erro! Banco de dados não acessível.

 

A linha 19 é 


 if (!(mysqli_select_db($base))) {

 

Share this post


Link to post
Share on other sites
<?php

$host = "localhost";
$user = "root";
$pass = "";
$base = "help_pet";
 
 error_reporting(E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);

$conexao = mysqli_connect($host,$user,$pass);
if (!($conexao)) {
 
 echo "Erro! Host, usuário ou senha do MYSQL incorreta";
 exit;
}
 if (!(mysqli_select_db($conexao, $base))) {
  echo "Erro! Banco de dados não acessível.";
  exit;
 }
 mysqli_query("SET NAMES 'utf8'");
?>

Substitua o seu código por esse acima e tente novamente.

  • Gostei 1

Share this post


Link to post
Share on other sites
11 minutos atrás, leomarriel disse:

<?php

$host = "localhost";
$user = "root";
$pass = "";
$base = "help_pet";
 
 error_reporting(E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);

$conexao = mysqli_connect($host,$user,$pass);
if (!($conexao)) {
 
 echo "Erro! Host, usuário ou senha do MYSQL incorreta";
 exit;
}
 if (!(mysqli_select_db($conexao, $base))) {
  echo "Erro! Banco de dados não acessível.";
  exit;
 }
 mysqli_query("SET NAMES 'utf8'");
?>

Substitua o seu código por esse acima e tente novamente.

Abraços.

Erro: 


Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\helppet\conexao.php on line 20

Linha 20:  

mysqli_query("SET NAMES 'utf8'");
 

Share this post


Link to post
Share on other sites

Mesma situação, é preciso indicar a conexão.

 if (!($conexao = mysqli_select_db($conexao, $base))) {
  echo "Erro! Banco de dados não acessível.";
  exit;
 }
 mysqli_query($conexao, "SET NAMES 'utf8'");

Lembrando que existem formas mais atuais de realizar essa conexão.

  • +1 1

Share this post


Link to post
Share on other sites
$conn = [
    'host' => 'endereço do banco de dados', 
    'user' => 'login de usuário do banco que pode pelo menos fazer leitura', 
    'pass' => 'senha de usuário usado acima', 
    'data' => 'nome do banco de dados para conectar', 
];

$mysqli = new mysqli($conn['host'], $conn['user'], $conn['pass'], $conn['data']);
if ($mysqli->connect_error) {
    die('Error de conexão (' . $mysqli->connect_errno . ')' . $mysqli->connect_error);
} else {
    echo "Conexão foi bem bem sucedida";
}

 

 

  • Obrigado! 1

Share this post


Link to post
Share on other sites
10 horas atrás, leomarriel disse:

Mesma situação, é preciso indicar a conexão.


 if (!($conexao = mysqli_select_db($conexao, $base))) {
  echo "Erro! Banco de dados não acessível.";
  exit;
 }
 mysqli_query($conexao, "SET NAMES 'utf8'");

Lembrando que existem formas mais atuais de realizar essa conexão.

Erro persiste na linha 20.

Código atual:

 

<?php
$host = "localhost";
$user = "root";
$pass = "";
$base = "help_pet";
 
 error_reporting(E_ALL & ~ E_NOTICE & ~ E_DEPRECATED);
$conexao = mysqli_connect($host,$user,$pass);
if (!($conexao)) {
 
 echo "Erro! Host, usuário ou senha do MYSQL incorreta";
 exit;
}
if (!($conexao = mysqli_select_db($conexao, $base))) {
  echo "Erro! Banco de dados não acessível.";
  exit;
 }
 mysqli_query($conexao, "SET NAMES 'utf8'");
?>
 
linha 20:
 mysqli_query($conexao, "SET NAMES 'utf8'");
 

Share this post


Link to post
Share on other sites
9 horas atrás, Omar~ disse:

$conn = [
    'host' => 'endereço do banco de dados', 
    'user' => 'login de usuário do banco que pode pelo menos fazer leitura', 
    'pass' => 'senha de usuário usado acima', 
    'data' => 'nome do banco de dados para conectar', 
];

$mysqli = new mysqli($conn['host'], $conn['user'], $conn['pass'], $conn['data']);
if ($mysqli->connect_error) {
    die('Error de conexão (' . $mysqli->connect_errno . ')' . $mysqli->connect_error);
} else {
    echo "Conexão foi bem bem sucedida";
}

 

 

Obrigada, conseguiu resolver meu problema. Abraços.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By leo.silvagomes
      Boa noite!
      Tenho um programa que importa determinado arquivo CSV para um banco SQL afim de depois comparar os dados entre versões diferentes do mesmo arquivo, por exemplo uma versão do arquivo é do dia 01/09 e outra do dia 15/09, a finalidade do arquivo é comparar o que mudou
      Uso uma procedure para importar os dados do arquivo para um objeto JvMemoryData e outra para alimentar uma ADOProc que faz o insert no SQL com os dados desse JvMD
       
      Ocorre que o arquivo tem um padrão de 38 colunas e algo prox de 1 milhão de linhas! Como o cliente não usa toda a informação na planilha fiz uma opção de importação rápida que faz o input somente das colunas utilizadas, mas mesmo assim o processo de leitura e importação do arquivo demora até 50 min
       
      Como posso deixar isso mais rápido? 
    • By Leandro Volanick
      Boa tarde pessoal.
       
      Gostaria de uma ajuda em uma consulta sql, onde quero agrupar os todos produtos comprados pelo mesmo CPF, dentro de uma array. 
       
      Segue o que estou usando:
      $data=mysqli_query($mysqli, "SELECT xml.id, xml.xProd as produto, prod.id as iddoproduto, GROUP_CONCAT( prod.xProd ) FROM produtos AS prod LEFT JOIN xml as xml ON xml.xProd = prod.xProd GROUP BY xml.CPFdest"); while($info=mysqli_fetch_array($data)) echo '['.$info['iddoproduto'].'],'; No momento, o codigo está trazendo apenas 1 produto, quero que ele printe todos produtos que o CPFdest já comprou.
       
       
    • By Jsala
      Warning in .\libraries\classes\Dbi\DbiMysqli.php#213
       mysqli_query(): (HY000/126): Index for table '.\mysql\user.MYI' is corrupt; try to repair it

      Backtrace

      .\libraries\classes\Dbi\DbiMysqli.php#213: mysqli_query(
      ,
      string 'SELECT 1 FROM mysql.user LIMIT 1',
      integer 0,
      )
      .\libraries\classes\DatabaseInterface.php#319: PhpMyAdmin\Dbi\DbiMysqli->realQuery(
      string 'SELECT 1 FROM mysql.user LIMIT 1',
      ,
      integer 1,
      )
      .\libraries\classes\DatabaseInterface.php#2286: PhpMyAdmin\DatabaseInterface->tryQuery(
      string 'SELECT 1 FROM mysql.user LIMIT 1',
      integer 256,
      integer 1,
      )
      .\libraries\classes\DatabaseInterface.php#2228: PhpMyAdmin\DatabaseInterface->isUserType(string 'super')
      .\libraries\server_common.inc.php#41: PhpMyAdmin\DatabaseInterface->isSuperuser()
      .\index.php#169: include(.\libraries\server_common.inc.php)
    • By mayko@123
      TENHO O SEGUINTE SELECT :   select loja,NOME,PREÇO from produtos  GROUP BY NOME,LOJA order by NOME,PREÇO ASC ;
      E O RETORNO É : 
       
      LOJA             NOME                            PREÇO
      A banana prata 1,98 C                  banana prata 1,99 B          COCO VERDE 1 123   COCO VERDE 1 C  COCO VERDE 1 C   laranja pera rio 0,49 A       laranja pera rio 1,99 123 laranja pera rio 1211 B LARANJA SERRA DAGUA 1,99 C LARANJA SERRA DAGUA 2,99 B maca fuji 2,50 C maca fuji 2,97 A maca fuji 2,99 B MAMAO 1,97 C MAMAO 2,10 123 PESSEGO 12 C PESSEGO 2,30 A PESSEGO 234 C UVA 1212 123 UVA 212 A UVA 3,25  
      QUERIA QUE ME RETORNASSE APENAS O PRIMEIRO PRODUTO,PREÇO DE CADA LOJA POR EXEMPLO : A LOJA 'A'  VENDEU A BANANA MAIS BARATA, A LOJA 'B' VENDEU O COCO VERDE MAIS BARATO A LOJA 'C' A LARANJA..... e assim por diante , senão o retorno vai ficar muito extenso pois vai ser muitas lojas e produtos.
    • By danteblatt
      Olá Srs,
      Não tenho muito conhecimento em PHP e estou com um formulário onde o usuário tem alguns campos para preencher e gravar no banco de dados SQL, sendo que um campo deste form será dinâmico onde o usuário poderá adicionar quantos campos forem necessários a partir de um botão "+".
      Nome do campo dinâmico: chavenf
      Segue abaixo o código do formulário:
      <form method="POST" action="../includes/mf-processa.php"> <div class="form-group"> <div class="form-row"> <div class="form-group col-md-4"> <input type="hidden" name="usuario[]" value="<?php echo $_SESSION['usuarioNome']; ?>" /> <select class="form-control" id="tipo" name="tipo[]"> <option selected>Tipo</option> <option>1</option> <option>2</option> </select> </div> <div class="form-group col-md-4"> <select class="form-control" id="prioridade" name="prioridade[]"> <option selected>Prioridade</option> <option>Alta</option> <option>Padrão</option> </select> </div> <div class="form-group col-md-4"> <input class="form-control" type="text" name="fornecedor[]" placeholder="Fornecedor" id="fornecedor"> </div> </div> <div style="display:none;" class="form-row" id="chavecte"> <div class="form-group col-md-12"> <label>Chave </label> <input class="form-control" type="text" name="chavecte[]"> </div> </div> <div class="form-row" id="row-nota"> <div class="form-group col-md-12"> <label>Chave da NF </label> <input class="form-control" type="text" name="chavenf[]" id="chavenf"> </div> </div> <div style="display:none;" class="form-row" id="add-field-nf"> <div class="form-group col-md-2"> <button type="button" class="btn btn-primary" id="add"> + </button> </div> </div> <div class="form-row"> <div class="form-group col-md-2"> <input type="submit" class="btn btn-primary" value="Cadastrar"> </div> </div> </div> </form> <script> $( "#add" ).click(function() { $( "#row-nota" ).append('<div class="form-group col-md-12"><input class="form-control" type="text" name="chavenf[]" id="chavenf"></div>'); }); </script> Abaixo o arquivo que conecta e insere no BD, "mf-processa.php"
      <?php session_start(); include_once("conexao.php"); $prioridade = filter_input(INPUT_POST, 'prioridade', FILTER_SANITIZE_STRING); $usuarioentrada = filter_input(INPUT_POST, 'usuario', FILTER_SANITIZE_STRING); $tipofrete = filter_input(INPUT_POST, 'tipofrete', FILTER_SANITIZE_STRING); $fornecedor = filter_input(INPUT_POST, 'fornecedor', FILTER_SANITIZE_STRING); $chavenf = preg_replace("/\s+/", "", filter_input(INPUT_POST, 'chavenf', FILTER_SANITIZE_STRING)); $chavecte = preg_replace("/\s+/", "", filter_input(INPUT_POST, 'chavecte', FILTER_SANITIZE_STRING)); $nNF = substr($chavenf, 25, 9); $timenow = date('d-m-Y'); $timenow .= ' '.date('H:i:s'); $qtnotas = count($chavenf)-1; for ($f = 0; $f <= $qtnotas; $f++) { $sql = "INSERT INTO base (data, usuarioentrada, prioridade, tipofrete, nf, fornecedor, chavenf, chavecte, acao, dataretorno, usuariofiscal) VALUES ( '.$timenow[$f].', '.$usuarioentrada[$f].', '.$prioridade[$f].', '.$tipofrete[$f].', '.$nNF[$f].', '.$fornecedor[$f].', '.$chavenf[$f].', '.$chavecte[$f].', '', '', '' )" or die ("<center>Erro: " . mysqli_error() . "</center>"); $insert = mysqli_query($conn, $sql); if(mysqli_insert_id($conn)){ $_SESSION['msgrec'] = "<p style='color:green;'>Nota cadastrada com sucesso!</p>"; header("Location: ../recebimento/recebimento.php"); }else{ $_SESSION['msgrec'] = "<p style='color:red;'>Nota não cadastrada com sucesso!</p>"; header("Location: ../recebimento/recebimento.php"); }  
       
      Veja o erro retornado na página.. Já tentei alterar o código e mesmo assim não consegui efetuar a inserção dos dados no BD.
       
      ( ! ) Warning: count(): Parameter must be an array or an object that implements Countable in D:\Wamp\www\RecebimentoAdm\includes\mf-processarecebimento.php on line 31 Call Stack # Time Memory Function Location 1 0.0001 411528 {main}( ) ...\mf-processarecebimento.php:0  
      ( ! ) Notice: Uninitialized string offset: 0 in D:\Wamp\www\RecebimentoAdm\includes\mf-processarecebimento.php on line 41 Call Stack # Time Memory Function Location 1 0.0001 411528 {main}( ) ...\mf-processarecebimento.php:0  
      ( ! ) Notice: Uninitialized string offset: 0 in D:\Wamp\www\RecebimentoAdm\includes\mf-processarecebimento.php on line 42 Call Stack # Time Memory Function Location 1 0.0001 411528 {main}( ) ...\mf-processarecebimento.php:0
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.