PHP与MySql建立连接

Posted hawthorn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP与MySql建立连接相关的知识,希望对你有一定的参考价值。

 通过php脚本建立与一个mysql数据库的连接时,数据库服务器的主机位置(在本地就是localhost)、用户名(root)、密码、和数据库名是必须的。一旦建立连接,脚本就能执行SQL命令。二者联系的一系列步骤主要为四步:

  1、用mysqli_connect()连接数据库;

  2、组装SQL查询串,放入一个变量,该变量将作为下一步的必须参数;

  3、用mysqli_query()执行查询,

  4、用mysqli_close()关闭连接。

  下面深入分析

  一、 mysqli_connect():建立连接,语法

 mysqli_connect(server,user,passwd,database_name);

 该函数将位置,用户名,口令,数据库名处理为串,所以必须用引号引起,例如:

$dbc = mysqli_connect(‘localhost‘,‘root‘,‘password‘,‘aliendatabase‘);

 调用该函数可以得到一个数据库连接,另外会得到一个PHP变量$dbc,这个变量与数据库交互。

  注:1、PHP语句要用分号结束。

    2、使用‘localhost‘,是代表数据库服务器和Web服务器在同一个服务器计算机上。

    3、如果省略第四个参数,会用mysqli_select_db()来指定数据库名;

    4、如果连接失败,die()函数会终止PHP脚本,并提供失败代码的反馈,例如

$dbc = mysqli_connect(‘localhost‘,‘root‘,‘password‘,‘aliendatabase‘) or die(‘Error connecting to MySQL sever.‘);

   如果连接未能创建就调用die()函数,反馈消息会输出到页面上,同时注意两个函数之间(即or前面)不需要分号,因为这是同一条语句的延续。

  二、建立PHP串变量,它包含所要执行的SQL查询语句,比如增、删、建等,例如建立一个INSERT查询:

$query = "INSERT INTO aliens_abduction(first_name, last_name, ".
        " when_it_happend, how_long, how_many, alien_description, ".
        " what_they_did ,fang_spotted, other, email) ".
        "VALUES (‘Sally‘, ‘Jones‘, ‘3 days ago‘, ‘1 day‘,’four‘, ".
        " ‘green with six tentacles‘, ‘We just talked and palyed with a dog‘ , ".
        " ‘yes‘, ‘I may have seen your dog .Contact me.‘, ".
        " ‘sa‘
    )";

 代码说明:1. $query是一个PHP串变量,现包含一个INSERT查询;

       2. 点号"."告诉PHP将这个串与下一行串联在一起;

       3. 整个代码是PHP代码,必须以分号结束。

      INSERT查询存储在一个串中之后,可以将它传递到mysqli_query()函数

注: 1、“查询”含义相当广义,可以指在数据库上完成的任何SQL命令,包括存储和获取数据。

  三、利用PHP查询MySQL数据库

  mysqli_query()函数需要两个信息来完成查询:数据库连接(第一步)和SQL查询串(第二步),例如:

$result = mysqli_query($dbc,$query);
        or die(‘Error querying database.‘);

 $result 变量只是存储mysqli_query()执行的查询是否成功。

  四、用mysqli_close()关闭连接,参数为一开始简历的数据库连接变量,例如:

mysqli_close($dbc);

 

以上是关于PHP与MySql建立连接的主要内容,如果未能解决你的问题,请参考以下文章

[风马一族_php]PHP与Mysql建立连接

如何建立与远程数据库的连接?

使用 PhP 在 android 和 mysql 之间建立连接时出错

PHP – Mysqli

BackboneJS - 如何建立与 MySQL 数据库的连接

php+mysql在数据库里数据大的话查询很慢