建立连接失败:PHP

时间:2014-10-20 07:51:22

标签: php mysql database config connect

我创建了名为functions.php的php脚本,其中我编写了以下代码。当我写“ $ conn = mysql_connect('localhost','root','pass'); ”这一行时,它工作正常。但是我想将这些凭据存储在配置文件中,以便在使用db时编辑细节变得非常容易。所以我创建了 config.php ,并编写了以下代码:

<?php
// this is config.php
$config = array(

    'host'=> 'localhost'
    'username' => 'root' ,
    'password' => 'pass' ,
    'database' => 'sample'
);
?>

这是 functions.php

<?php
include 'config.php';
function connect($config) {
    $conn = mysql_connect($config['host'],$config['username'],$config['password']);
    return $conn;
}

$con = connect();
if(!$con) die ('problem in connection');

但是当我做到这一点时,它不起作用。我怎样才能解决这个问题? Plzz hlp

4 个答案:

答案 0 :(得分:0)

您的语法不正确,请尝试以下操作:

<?php
// this is config.php
$config = array(

    'host'=> 'localhost',     // Missing comma
    'username' => 'root' ,
    'password' => 'pass' ,
   'database' => 'sample'
);
?>

此外,您不需要将$config传递给函数,它将在全球范围内提供。

答案 1 :(得分:0)

为什么要将$config参数添加到connect函数中?您没有传递任何参数,因此$config在您的函数中始终为null。将参数添加到您的调用应该可以解决问题。

$con = connect($config);

答案 2 :(得分:0)

将config.php更改为:

<?php
// this is config.php
$config = array(

    'host'=> 'localhost', // comma was missing
    'username' => 'root' ,
    'password' => 'pass' ,
    'database' => 'sample'
);
?>

和functions.php:

<?php
include 'config.php';
function connect($config) {
    $conn = mysql_connect($config['host'],$config['username'],$config['password']);
    return $conn;
}

$con = connect($config);        // You need to pass $config variable when calling function
if(!$con) die ('problem in connection');

答案 3 :(得分:0)

我想建议以下代码。我将在config.php中定义变量而不是数组值,并使用函数.php

<强>的config.php

<?php 
     define("DB_HOST", "localhost");
     define("DB_USERNAME", "root");
     define("DB_PASSWORD", "pass");
     define("DB_NAME", "sample");
?>

functions.php

  include('config.php');
  $conn = mysql_connect(DB_HOST,DB_USERNAME,DB_PASSWORD);