sql >> Database >  >> RDS >> Mysql

Fout bij verbinding maken met database op gehoste server

Kanttekening: Ervan uitgaande dat de inloggegevens correct zijn, aan u gegeven door uw webhost.

Er zijn verschillende problemen met deze code (overgenomen uit een opmerking die je hebt achtergelaten).

Ten eerste worden drie van uw declaraties niet geciteerd en worden ze als constanten behandeld.

PHP-foutrapportage zou meldingen van ongedefinieerde constanten hebben veroorzaakt.

Deze worden behandeld als constanten:

 $username=b31_16461744; 
 $pass=test123; 
 $dbname=b31_16461744_user; 

Je verwijst ook naar de verkeerde variabele voor de gebruikersnaam, namelijk $user wat zou moeten zijn $username . Foutrapportage zou een ongedefinieerde variabele melding hebben ondertekend.

Dan mix je mysql_ met mysqli_ syntaxis. Die verschillende MySQL-API's vermengen zich NIET. Je moet dezelfde code gebruiken in je hele code.

Sidenote:de andere vraag die je hebt geplaatst Toegang geweigerd voor gebruiker 'test123'@'192.168.0.38' (met wachtwoord:NEE) je gebruikt sql306.byethost31.com voor de gastheer. Zorg ervoor dat dit klopt. Ik heb geen idee welke instellingen die host wil dat je gebruikt.

<?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...!!"; 
     }
?>

of gebruik gewoon alle vier de parameters:

<?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); 
     }
?>

Uw else met de echo helpt je niet. Gebruik mysqli_error() om de echte fout te krijgen.

D.w.z.:or die("Error " . mysqli_error($a));

Voorbeeld uit de handleiding

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

Referenties:

Voeg foutrapportage toe naar de bovenkant van uw bestand(en) om fouten te vinden.

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code

Kanttekening: Het weergeven van fouten mag alleen worden gedaan in de enscenering en nooit in de productie



  1. Charlotte SQL Server-gebruikersgroep:langzame zoekopdrachten oplossen. Snel.

  2. PostgreSQL maakt een nieuwe kolom met waarden die afhankelijk zijn van andere kolommen

  3. Hoofdlettergevoelige databasequery

  4. Een SQL-resultaat gebruiken in een foreach-lus