• PHP连接数据库的方式


    1,旧的方式 - mysql(面向过程)

     1 <?php
     2 //定义连接参数
     3 $host = 'localhost';
     4 $user = 'root';
     5 $password = '';
     6 $dbname = 'databasename';
     7 
     8 //第一步开始连接到数据库主机地址
     9 $con = @mysql_connect($host, $user, $password); #错误抑制符在产生错误的时候不提示错误
    10 //如果没有连接成功,提示错误
    11 if(!$con){
    12     die("Could not connect to the server: 
    " . mysql_error());
    13 }
    14 
    15 //第二步开始选择数据库
    16 $select_db = mysql_select_db($dbname);
    17 #开始判定
    18 if(!$select_db){
    19     die("Could not select the database: 
    " . $dbname . mysql_error());
    20 }
    21 
    22 //第三步开始查询数据库
    23 $sql = "select * from table"; #定义sql语句
    24 $res = mysql_query($sql); #利用mysql_query方法查询结果并存储在$res中
    25 //开始判定是否取得结果
    26 if(!$res){
    27     die("Could not get the results: 
    " . mysql_error());
    28 }
    29 
    30 //第四步在浏览器显示结果
    31 while($row = mysql_fetch_assoc($res)){
    32     print_r($row);
    33 }
    34 ?>

    2,新的方式myslqi(面向过程)

     1 <?php
     2 //定义连接参数
     3 $host = 'localhost';
     4 $user = 'root';
     5 $password = '';
     6 $dbname = 'databasename';
     7 
     8 //开始连接数据库
     9 $conn = mysqli_connect($host, $user, $password, $dbname);
    10 #判定是否连接成功
    11 if(mysqli_connect_errno($conn)){
    12     die("Could not connect to the database: 
    " . mysqli_connect_error());
    13 }
    14 
    15 //设置查询数据库编码格式
    16 mysqli_query($conn, "set names utf8"); #设置数据库编码格式,注意utf8没有-;
    17 
    18 //定义查询语句
    19 $sql = "select * from table";
    20 //开始查询
    21 $query = mysqli_query($conn, $sql);
    22 
    23 //获取结果
    24 while($row = mysqli_fetch_array($query)){
    25     print_r($row);
    26 }
    27 
    28 //释放结果
    29 mysqli_free_result($query);
    30 //关闭连接
    31 mysqli_close($conn);
    32 ?>

    3,个人喜欢的方式,mysqli(面向对象)

     1 <?php
     2 //定义连接参数
     3 $host = 'localhost';
     4 $user = 'root';
     5 $password = '';
     6 $dbname = 'databasename';
     7 
     8 //开始连接数据库
     9 $conn = new mysqli($host, $user, $password, $dbname);
    10 /*
    11     也可以这样连接
    12     $conn = new mysqli();
    13     $conn->connect($host, $user, $password, $dbname);
    14 */
    15 //开始判定是否连接
    16 if($conn->connect_errno){
    17     die("Could not connect to the databse: 
    " . $conn->connect_error);
    18 }
    19 
    20 //定义sql语句
    21 $sql = "select * from table";
    22 //调用对象方法query进行查询
    23 $query = $conn->query($sql);
    24 
    25 //开始返回结果并打印在浏览器上
    26 while($row = $query->fetch_array()){
    27     print_r($row);
    28 }
    29 
    30 //释放结果
    31 $query->free_result();
    32 //关闭连接
    33 $conn->close();
    34 ?>

    4,利用mysql做一个类来查询数据库 

     1 <?php
     2 class databaseConnect{
     3     //初始化连接数据库的必要参数
     4     private $host = 'localhost';
     5     private $user = 'root';
     6     private $password = '';
     7     private $dbname = 'databasename';
     8 
     9     //类被实例化后直接显示结果
    10     public function __construct(){
    11         $this->connect_to_server();
    12         $this->select_the_database();
    13         $this->get_results();
    14     }
    15 
    16     //用private关键词封装数据库连接方法
    17     private function connect_to_server(){
    18         $con = @mysql_connect($this->host, $this->user, $this->password);
    19         if(!$con){
    20             die("Could not connect to the server: 
    " . mysql_error());
    21         }
    22     }
    23 
    24     //用private关键词封装数据库选择方法
    25     private function select_the_database(){
    26         $select_db = mysql_select_db($this->dbname);
    27         if(!$select_db){
    28             die("Could not select the database: 
    " . $this->dbname . " " . mysql_error());
    29         }
    30     }
    31 
    32     //用private关键字封装数据库查询方法
    33     private function query_db(){
    34         $sql = "select * from table";
    35         $query = @mysql_query($sql);
    36         if(!$query){
    37             die("Could not get the query: 
    " . mysql_error());
    38         }
    39         return $query; #将结果返回到调用的代码行
    40     }
    41 
    42     //用private关键字封装结果方法
    43     private function get_results(){
    44         $res = $this->query_db(); #取得数据库查询方法里的结果
    45         $row = mysql_fetch_assoc($res);
    46         print_r($row);
    47     }
    48 }
    49 
    50 $s = new databaseConnect(); #实例化类并赋值给$s得到一个databaseConnect的对象,首先调用的方法就是__construct();得到结果在浏览器
    51 
    52 var_dump($s);
    53 
    54 ?>

    PHP连接数据还有PDO。

  • 相关阅读:
    HttpModule,HttpHandler,HttpHandlerFactory
    IHttpModule实现URL重写
    HttpModule与HttpHandler详解
    IHttpModule接口
    VS中新建网站和新建项目web应用程序的区别?(实际应用总结一点)
    slf4j简介
    SQL条件表达式
    Windows命令查看文件MD5
    Final对象
    Seasar2框架:AOP
  • 原文地址:https://www.cnblogs.com/mafu/p/13826901.html
Copyright © 2020-2023  润新知