douduan3203 2016-05-01 13:31
浏览 88
已采纳

是否需要将__construct中的连接变量插入mysqli_query中?

I'm starting to make a PHP class for a database connection, i've made a constructor and in that constructor i make the connection to the database.

class mysqli_db{

        function __construct()
        {
            $conn = mysqli_connect("ip","username","password");

            if (!$conn) {
                echo "Cannot connect to server";
                exit();
            }

            $db = mysqli_select_db($conn,"silvaag166_prj");

            if (!$db) {
                echo "Cannot select database";
                exit();
            }
        }

    }

I understand de part above but now i want to make a function to select data from the database so i've made this:

public function selectAll($tablename)
        {
            return mysqli_query(?,"SELECT * FROM ".$tableName);
        }

At the ? i need to add the connection string and that can be found in the constructor. How do i need to insert the connectionstring at the ?.

  • 写回答

2条回答 默认 最新

  • duan39779 2016-05-01 13:40
    关注

    Store the connection as a class property, it will then be available to the whole class i.e. all its methods as $this->conn

    class mysqli_db{
        private $conn;
    
        function __construct()
        {
            $this->conn = mysqli_connect("ip","username","password");
    
            if (!$this->conn) {
                echo "Cannot connect to server";
                exit();
            }
    
            $db = mysqli_select_db($this->conn,"silvaag166_prj");
    
            if (!$db) {
                echo "Cannot select database";
                exit();
            }
        }
    
        public function selectAll($tablename)
        {
            return mysqli_query($this->conn,"SELECT * FROM ".$tableName);
        }
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘