无法使用配置文件连接到数据库

时间:2011-03-14 20:12:42

标签: php mysql

我使用一个文件(ss-config.php),其中包含有关servor和数据库连接的信息,这里是ss-config.php文件的代码:

<?php

define('DB_NAME', 'ssiphone');

/** MySQL database username */
define('DB_USER', 'root');

/** MySQL database password */
define('DB_PASSWORD', '');

/** MySQL hostname */
define('DB_HOST', 'localhost');
?>

但是当我尝试连接时,我收到了这个错误:

Parse error: parse error in C:\wamp\www\ssiphone\classes\ConnectionManipulationBaseDeDonnees.php on line 21

这是我的代码,它会导致问题:

class ConnectionManipulationBaseDeDonnees
{
   private $bdd;//attribut $bdd qui contiendra la connexion à la base 


   public function connection(){//fonction connection qui se charge de la connexion à la base de données
   include("../ssiphoneadmin/ss-config.php");
         $host=DB_HOST;
         $dbname=DB_NAME;
         $dbuser=DB_USER;
         $dbpsw=DB_PASSWORD;

         try{
            $pdo_options[PDO::ATTR_ERRMODE]=PDO::ERRMODE_EXCEPTION;

            $this->bdd=new PDO('mysql:host='.$host.';dbname='.$dbname.','.$dbuser.','.$dbpsw.','$pdo_options);
            }
         catch(Exception $e)//en cas d`erreur, le catch est fait pour la rattrapper 
            {
            die('Erreur: '.$e->getMessage());
            }
   }//fin fonction connection
}//fin class

第21行是包含$this语句的行。 THX提前获得任何帮助:)

4 个答案:

答案 0 :(得分:0)

     $this->bdd=new(PDO('mysql:host='.$host.'dbname='.$dbname.','.$dbuser.','.$dbpsw.','$pdo_options);
                                                                                      ^^^

您在我指示的位置错过了.

答案 1 :(得分:0)

您在最后一个文字部分和最后一个选项(.)之间缺少$pdo_options

$this->bdd=new PDO('mysql:host='.$host.';dbname='.$dbname.','.$dbuser.','.$dbpsw.','.$pdo_options);
                                                                                    ^
                                                                                    |
                                                                                    |

答案 2 :(得分:0)

你错过了一行.

$this->bdd=new PDO('mysql:host='.$host.';dbname='.$dbname.','.$dbuser.','.$dbpsw.','$pdo_options);

应该是

$this->bdd=new PDO('mysql:host='.$host.';dbname='.$dbname.','.$dbuser.','.$dbpsw.','.$pdo_options);

答案 3 :(得分:0)

我认为PDO构造函数应如下所示:

$this->bdd=new PDO('mysql:host='.$host.';dbname='.$dbname, $dbuser, $dbpsw, $pdo_options);

如文件中所述:

PDO::__construct() ( string $dsn [, string $username [, string $password [, array $driver_options ]]] )