2016-04-13 6 views
1

BEARBEITEN: GelöstPHP enthalten/erfordern Variablen nicht bestanden

Ich versuche, einige Variablen für eine MySQL-Verbindung aus einer separaten Datei übergeben. Sie scheinen jedoch nur in einer Kette und nicht als Variablen durchzukommen.

connect.php:

<?php 
    function connect(){ 
     require ($_SERVER['DOCUMENT_ROOT'].'/db-connect.php'); 
     $conn1 = new mysqli($servername, $username, $password, $dbname); 
     if ($conn1->connect_error) { 
      die("Connection failed: " . $conn1->connect_error); 
      } 
      echo $conn1->host_info . "\n"; 
    } 
    connect(); 
?> 

db-connect.php:

<?php 
$servername = "localhost"; 
$username = "-"; 
$password = "--"; 
$dbname = "---"; 
?> 

Nachricht kommt durch:

$servername = "localhost"; $username = "-"; $password = "--"; $dbname = "---";Connection failed: Access denied for user '-'@'localhost' (using password: NO) 

Hinweise: Das $ Passwort am Ende ist anders das, was in der Datei db-connect.php ist. Es ist ein älteres Passwort, das ich hatte, als ich es zum ersten Mal ausprobierte. Außerdem ist der Benutzer '-' @ 'localhost' ein alter Benutzer und nicht der Benutzer von $ username.

Irgendwelche Ideen bitte und danke? Matt

Antwort

0

Vielleicht funktioniert dieser Weg für Sie besser.

<?php 

require ($_SERVER['DOCUMENT_ROOT'].'/db-connect.php'); 

    function connect(){ 

    global $servername, $username, $password, $dbname; 

     $conn1 = new mysqli($servername, $username, $password, $dbname); 
     if ($conn1->connect_error) { 
      die("Connection failed: " . $conn1->connect_error); 
      } 
      echo $conn1->host_info . "\n"; 
    } 
    connect(); 

?> 
+0

Ich habe es auch so versucht und kein Glück. Ist es möglich, dass meine php5.ini-Datei es vermasselt? Ich musste einen von Grund auf neu erstellen und weiß nicht, ob ich alles habe, was ich brauche. –

+0

Hmm, möglicherweise. Haben Sie (zum Debuggen von puprposes) versucht, die Variablen einfach als Verbatim in die Funktion einzufügen? – RefreshCarts

+0

Ja, es funktioniert so gut. Ich könnte es so behalten, ich wollte sie nur in einer separaten Datei haben. –

Verwandte Themen