Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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'");
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

Aparece alguma mensagem de erro? Qual?

Compartilhar este post


Link para o post
Compartilhar em outros 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))) {

 

Compartilhar este post


Link para o post
Compartilhar em outros 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.

Compartilhar este post


Link para o post
Compartilhar em outros 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'");
 

Compartilhar este post


Link para o post
Compartilhar em outros 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.

Compartilhar este post


Link para o post
Compartilhar em outros 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";
}

 

 

Compartilhar este post


Link para o post
Compartilhar em outros 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'");
 

Compartilhar este post


Link para o post
Compartilhar em outros 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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Boa tarde, pessoal.
      Espero que todos estejam bem.
       
      Seguinte:
      Tenho a seguinte consulta:
       
      $usuarios= "SELECT * FROM usuarios";
      $query= mysqli_query($conexao, $usuarios) or die ("Usuário não encontrado");
      $usuario = mysqli_fetch_array($query);
       
      Quero pegar apenas o campo 'nome' da tabela 'usuarios' e colocar todos os resultados da seguinte forma:
       
      $nomes = array("Rafael", "João", "Maria", "Pedro", "Patricia", "Camila");
       
      Agradeço desde já.
      Abs
       
       
    • Por FabianoSouza
      Tenho uma function que precisa receber 02 argumentos.
      Ela funciona se eu aplicar num select qualquer. Mas se eu aplicar num select dinâmico, ocorre erro.
      Veja trecho do meu select.
      ... SET @sql = @sql +', dbo.retornaIco_ItemBloq((SELECT COUNT(*) FROM dbo.tab AS TT2 WHERE TT2.codCategTreina = CTT.id),'+@title+') AS ''resp''' ... No caso, o primeiro argumento da function dbo.retornaIco_ItemBloq é um SELECT COUNT.
      O segundo argumento é uma variável (que está devidamente declarada e definida).
       
      O erro ocorre porque ao executar (chamando EXEC(@sql) ), o SQL entende que o segundo argumento é uma coluna da consulta principal, pois existe uma vírgula antes da variável @title (que é o segundo argumento da function).
      Repito. Se eu aplicar essa function num select normal, funciona normalmente. Porém, preciso que funcione num SQL dinâmico porque é esse é o padrão que estou adotando para o sistema todo.
       
      A function dbo.retornaIco_ItemBloq faz o seguinte:
      1) Recebe o valor do COUNT e da variável @title
      2) Se o COUNT for maior que  Zero, cria uma tag HTML (uma SPAN), define sua title com o valor da variável @title e passa para uma variável
      3) Retorna o HTML que será exibido no resultado da consulta principal
      É super simples.
       
      Há outra forma de chamar a function?
    • Por Elisame Araújo
      Seguinte,
      Eu tenho uma página de atualização de lista de faixas que estão agrupados por álbum, com os dados vindo através de parâmetros na url como o albumID e detalhes e são retornados dentro de um while.
      O que eu queria é que ele atualizasse todos os campos que fossem editados se eles fossem modificados, mas o que o ocorre é que apenas o último registro é atualizado.
       
      O script que traz as faixas:
       
      <tr> <form class="form-group" method="post" action="includes/funcoes/atualizar-faixas.php"> <?php while($sqlSelect = mysqli_fetch_assoc($result)) { ?> <td><input type="text" value="<?php echo $sqlSelect['trackNumero'] ?>" class="form-control" name="trackNumero"></td> <td><input type="text" value="<?php echo $sqlSelect['trackTitulo'] ?>" class="form-control" name="trackTitulo"></td> <td><input type="text" value="<?php echo $sqlSelect['trackTraducao'] ?>" class="form-control" name="trackTraducao"></td> <td><input type="text" value="<?php echo $sqlSelect['trackID'] ?>" class="form-control" name="trackID" readonly></td> <td><input type="text" value="<?php echo $sqlSelect['albumID'] ?>" class="form-control" name="albumID" readonly></td> </tr> <?php } ?> <tr><a href="albuns-lista.php"><button name="cancelar" id="cancelar" class="btn btn-danger mb-3 mr-1" type="button"> <i class="fa-solid fa-arrow-left"></i> Voltar</button></a></tr> <tr><button name="update" id="update" class="btn btn-success mb-3" type="submit" value=""><i class="fa-solid fa-arrow-up-from-bracket"></i> Atualizar</button></tr> </form>  
       
      E esse é o resultado do código acima:

       
      E este é o código que uso pra fazer o UPDATE no banco de dados:
      <?php require_once "../db/albuns.php"; if(isset($_POST['update'])){ $trackNumero = $_POST['trackNumero']; $trackTitulo = mysqli_real_escape_string($conecta2, $_POST['trackTitulo']); $trackTraducao = $_POST['trackTraducao']; $trackID = $_POST['trackID']; $albumID = $_POST['albumID']; $sqlUpdate = "UPDATE `faixas` SET `trackTitulo` = '$trackTitulo', `trackNumero` = '$trackNumero', `trackTraducao` = '$trackTraducao' WHERE `albumID` = $albumID AND `trackID` = $trackID"; if($atualizaDados = mysqli_query($conecta2, $sqlUpdate) == true){ var_dump($sqlUpdate); //header("location: ../../albuns.php?update=sucesso"); } else { //header("location: ../../albuns.php?update=erro"); } } ?> Como eu faria para que cada linha fosse atualizada individualmente? Já tentei diversos métodos, mas o resultado continua sendo a atualização apenas do último registro no banco, ignorando o restante das atualizações.
    • Por mr22robot
      Ola caros amigos. 
      Estou com uma dúvida aqui que embora nao tenho achado ainda uma resposta, acredito que haja.
      Estou estudando a tão sonhada linguagem de programação asp.net core mvc. Linguagem essa que demorei 5 anos pra iniciar os estudos rsrs.
      Mas estou agarrado em uma situação. 
      Estou usando como base de dados nos meus estudos um banco Oracle. Que já tem algumas informações nele. Utilizei o SCAFFOLD para criar as classes e o contexto baseado no banco e tabelas existentes. 
      Porem agora na fase das consultas, estou perdido em como utilizar o IN que eu utilizo no oracle; no LINQ.
      Ex: 
      SELECT CODPROD,DESCRICAO FROM PRODUTO WHERE CODPROD IN(1,2,3,4,5,6) Como eu utilizo esse filtro com uma restrição de códigos de produtos? no caso o where codprod in(1,2,3,4,5,6) ?.
      Desde já obrigado pela ajuda.
    • Por luiz0o
      Estou fazendo um projeto para faculdade, e tenho um formulário, esse formulário precisa enviar as respostas tanto para um banco de dados, mas também tem que enviar para uma API que envia para meu email, mas não sei como fazer essas duas coisas ao mesmo tempo
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.