gpt4 book ai didi

php - 如何在单个 session 期间更改数据库

转载 作者:行者123 更新时间:2023-11-29 13:22:07 25 4
gpt4 key购买 nike

我需要实现用户可以动态更改数据库的功能。一旦更改,当前数据库将在所有进行数据库调用的 php 文件中使用。

因此,我试图找到在单个 session 期间切换并记住当前数据库参数的最佳解决方案。这就是我现在正在做的事情:

1) php 连接文件 conn1.php、conn2.php、conn3.php 等,包含不同的数据库连接参数(名称、密码等 - $hostname、<强>$用户名等等)。

2)当用户更改数据库时,当前数据库代码将保存为 session 变量$currDB。

3)所有包含数据库调用的文件,顶部都有一个数据库连接开关:

switch ($currDB){
case 1:
require_once('conn1.php');
break;
case 2:
require_once('conn2.php');
break;
........
}
$mysqli = new mysqli($hostname,$username,$password,$database);

是否有更优雅的方法来实现根据用户选择切换数据库的相同功能?我不确定跨多个文件维护 session 变量是否是最佳选择。

还有更好的想法吗?

谢谢

最佳答案

我建议,你做类似的事情

  • 从 session 或用户输入中获取 $currentDB
  • 通过 (int) 或例如将其清理为 int在非常旧的 PHP 版本上,is_numeric() 后跟 abs(round(..))

现在只需 @require_once("conn$currentDB.php"); 并检查错误。

最后一步是将其放入 conn.php 并包含所有消费者的内容。

关于php - 如何在单个 session 期间更改数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20670839/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com