2016-03-15 125 views
-2

我正在使用YII2.0多个数据库连接使用ajax,我有多个数据库帐户,customer_1,customer_2..customer_n 帐户数据库中有用户表,那么该表中的每个用户都有相应的D B。YII2 Ajax多个数据库连接

基于user_id我喜欢用ajax.is连接数据库,有这种可能性。

在此先感谢您的想法和建议。

+0

嗯,我想你应该明确你的问题。 Ajax与DB连接无关。 Ajax只是执行请求。数据库连接是服务器端。你是否试图将每个用户连接到不同的数据库?如果是这样,我有你的答案... – PLM57

回答

0

您可以执行类似如下的操作来创建运行时数据库连接。你需要从你的主数据库得到正确的dbname和其他细节来创建低于临时连接

//create temp db connection 
      $config_temp = [ 
       'components' => [ 
        'tempdb' => [ 
         'class' => 'yii\db\Connection', 
         'dsn' => 'mysql:host=HOSTNAME;dbname=DBNAME', 
         'username' => USERNAME, 
         'password' => PWD, 
         'charset' => 'utf8', 
        ], 
       ], 
      ]; 
      $odb = Yii::createObject($config_temp['components']['tempdb']); 
      //link user group for current org 
      $sql = "SQL STATEMENT"; 
      $command_temp = $odb->createCommand($sql);