Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Erro ao conectar ao banco de dados no servidor hospedado


Nota: Supondo que as credenciais estejam corretas, fornecidas a você pelo seu host.

Existem vários problemas com este código (retirado de um comentário que você deixou).

Em primeiro lugar, três de suas declarações não são citadas e estão sendo tratadas como constantes.

O relatório de erros do PHP teria lançado avisos de constantes indefinidas.

Estes são tratados como constantes:
 $username=b31_16461744; 
 $pass=test123; 
 $dbname=b31_16461744_user; 

Você também está referenciando a variável errada para o nome de usuário sendo $user que deve ser $username . O relatório de erros teria assinado um aviso de variável indefinida.

Então você está misturando mysql_ com mysqli_ sintaxe. Essas diferentes APIs do MySQL NÃO se misturam. Você deve usar o mesmo em todo o seu código.

Nota lateral:A outra pergunta que você postou Acesso negado para o usuário 'test123'@'192.168.0.38' (usando a senha:NÃO) você está usando sql306.byethost31.com para o hospedeiro. Certifique-se de que está correto. Não tenho ideia de quais configurações esse host deseja que você use.
<?php 
     $localhost="localhost"; 
     $username="b31_16461744"; 
     $pass="test123"; 
     $dbname="b31_16461744_user"; 
     $a= mysqli_connect($localhost, $username, $pass); 
     mysqli_select_db($a, $dbname); 
     if($a)
     { 
       echo "connected..";
     } 
     else 
     { 
       echo "not...!!"; 
     }
?>

ou apenas use todos os quatro parâmetros:
<?php 
     $localhost="localhost"; 
     $username="b31_16461744"; 
     $pass="test123"; 
     $dbname="b31_16461744_user"; 
     $a= mysqli_connect($localhost, $username, $pass, $dbname); 

     if($a)
     { 
       echo "connected..";
     } 
     else 
     { 
       echo "not...!!" . mysqli_error($a); 
     }
?>

No entanto, seu else com o eco não ajuda você. Use mysqli_error() para obter o erro real.

Ou seja:or die("Error " . mysqli_error($a));

Exemplo do manual
$link = mysqli_connect("myhost","myuser","mypassw","mydb")
        or die("Error " . mysqli_error($link)); 

Referências:

Adicionar relatório de erros no topo do(s) seu(s) arquivo(s), o que ajudará a encontrar erros.
<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code

Nota: A exibição de erros deve ser feita apenas na preparação e nunca na produção