【问题标题】:MySQL <= 5.2 - OOP connect to database in classMySQL <= 5.2 - OOP 在类中连接到数据库
【发布时间】:2018-02-26 17:42:49
【问题描述】:

我不能使用 MYSQLI 或 PDO

我目前正在处理一个遗留项目 (5.2),我不能使用 MySQLi 或 PDO 等花哨的扩展 - 只有 MySQL - 我将如何连接到数据库并在课程中使用该连接?

基本上是这样

public function __construct($pdo) {
$this->db = $pdo;

}

作为 5.2 MySQL / PHP

我只需要一个简单的示例即可开始。

谢谢!

【问题讨论】:

标签: php mysql class oop legacy


【解决方案1】:

通过 PHP 的 PDO 连接 我强烈建议使用 PDO 而不是 mysqli。pdo 更快,使用准备好的语句来避免 sql 注入,并过滤、清理用户输入。

<?php
session_start();

$servername = "localhost";
$username = "username";
$password = "password";

// Create connection
$conn = new mysqli($servername, $username, $password);

// Check connection
if (mysqli_connect_error()) {
    die("Database connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

您可以将上述代码用于 PHP 5.2.9 和 5.3.0

【讨论】:

  • MySQLi 也允许预处理语句
  • @MarkBaker 为每个活动 PDO 的查询优化是最好的比较 mysqli.. 我自己的经验。
  • 也不能使用 MySQLi。
  • @AjmalPraveen - 这是非常主观的,可以说不是这种情况......但你的回答似乎表明 PDO 比 MySQLi 更好,因为它允许准备好的语句,但情况并非如此,因为都允许准备好的语句
  • @MarkBaker 我没有提到 PDO 更好,因为准备好的语句。我建议对速度和自我优化比较 mysqli .. 根据我自己的经验提出建议。我提到使用准备好的语句没有提到是pdo或mysqli。我知道prepared statements可以用mysqli和pdo
猜你喜欢
  • 1970-01-01
  • 2014-11-10
  • 2012-01-18
  • 2016-08-10
  • 1970-01-01
  • 2014-01-11
  • 1970-01-01
  • 1970-01-01
  • 2018-06-14
相关资源
最近更新 更多