使用mysqli_real_connect连接到远程MySQL数据库后查询

时间:2013-12-26 21:33:57

标签: php mysql ssl

我可以使用mysqli_init(),mysqli_ssl_set和mysqlii_real_connect成功连接到远程MySQL数据库。我似乎无法找到连接后进行查询的示例。 mysqli_real_connect的结果是一个布尔值,而mysqli_connect返回一个表示与MySQL服务器连接的对象。使用mysqli_real_connect后如何引用连接?任何人都可以提供一个例子吗?

<?php error_reporting(E_ALL);
ini_set("display_errors", "1");
$obj = mysqli_init();
mysqli_options($obj, MYSQLI_OPT_CONNECT_TIMEOUT, 5);
mysqli_ssl_set( $obj,
                NULL,
                NULL,
                'ca-cert.pem',
                NULL,
                NULL);
$link = mysqli_real_connect($obj, 'xxxxxxxxxxxx.com', 'user', 'password, 'database_name');
if (!$link)
{
    die('<br /><br />Connect Error (' . mysqli_connect_errno() . ') '.mysqli_connect_error());
} ?>

1 个答案:

答案 0 :(得分:0)

您使用示例的方式是mysqli_query($obj, QUERY HERE);

但是,您应该考虑使用OOP(面向对象编程)样式,因为这样您将来可以更容易地参考。

<?php

Class Database {
      private $obj;

      public function __construct() {
          $this->obj = new mysqli('xxxxxxxxxxxx.com', 'user', 'password', 'database_name');
          if (!$this->obj) {
        die('<br /><br />Connect Error (' . mysqli_connect_errno() . ') '.mysqli_connect_error());
          }
      }

      public function query($query) {
          return  $this->obj->query($query);
      }
} 

?>

您可以通过以下方式调用此类:

$db = new Database();

从那以后,您可以使用以下示例简单地调用您的函数。

$db->query("SELECT * FROM users"); // or whatever query you are parsing.