189 8069 5689

php怎么和数据库通信 php与数据库交互

php怎么连接mysql数据库并导入数据?

方法/步骤

创新互联专注于头屯河企业网站建设,响应式网站建设,商城网站建设。头屯河网站建设公司,为头屯河等地区提供建站服务。全流程按需规划网站,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

1

登录到phpMyAdmin

2

新建一个要导入的数据库,点击“+new”

3

如图,分别填写数据库名称,以及选择数据库的排序规则,

4

完成步骤3,点击“创建”

5

完成步骤4,从右侧就可以看到我们新创建的数据库了,如果没有立即显示,刷新即可立马显示了。

6

单击我们新创建的数据库,

7

然后,我们选择“导入”,

8

完成步骤7,我们点击“选择文件”,

9

点击了“选择文件”之后,就会出现如图所示的弹出框,我们选择要导入的sql就可以了,后缀名可以是.sql,也可以是压缩文件.zip。如图,选择好文件之后,点击“确定”就可以了

10

完成步骤⑨,你就可以从刚才的页面中看到自己上传的文件了,如图所示,其余选项默认就可以了,然后点击“执行”就可以了。

11

这个时候,你就可以看到你的数据已经导入到你新创建的数据库中了

PHP与数据库的连接

PHP与数据库连接最常用的方法有四种,它们分别是MySQL、mysqli、pdo、adodb,其中以第一种方法最常用,方法如下:

//与数据库服务器连接

$conn = @mysql_connect('数据库主机名','用户名','密码');

//选择具体数据库

mysql_select('数据库名',$conn);

//如果只打开了一个数据库连接,则$conn可以省略。

怎么连接PHP数据库。

方法/:

1、数据库连接第一步:配置mysql_connect()的参数,参数依次为:主机地址,用户名,用户密码;

2、mysql_pconnect()与mysql_connect()是不一样的,pconnect顾名思义是持久连接;

3、服务器连接成功后,需要选择需要用的数据库;

4、使用mydql_close()可以关闭数据库连接资源,避免长时间占用启用资源消耗;

5、mysqli_connect( )是mysql连接的另一种方式,参数形式一样;

6、首次使用mysql连接数据库时,要记得使用输入逻辑判断,服务器连接不成功或者选择数据库不成功,都要用Mysql_error或者mysql_errno来报错;

7、mysql的报错,能够帮助准确地定位到错误发生在哪里。

PHP网站怎么连接到数据库?

常规方式

常规方式就是按部就班的读取文件了。其余的话和上述方案一致。

// 读取配置文件内容

$handle = fopen("filepath", "r");            $content = fread($handle, filesize("filepath"));123

PHP解析XML

上述两种读取文件,其实都是为了PHP解析XML来做准备的。关于PHP解析XML的方式的博客有很多。方式也有很多,像simplexml,XMLReader,DOM啦等等。但是对于比较小型的xml配置文件,simplexml就足够了。

配置文件

?xml version="1.0" encoding="UTF-8" ?mysql

!-- 为防止出现意外,请按照此标准顺序书写.其实也无所谓了 --

hostlocalhost/host

userroot/user

password123456/password

dbtest/db

port3306/port/mysql12345678910

解析

?php/**

* 作为解析XML配置文件必备工具

*/class XMLUtil {

public static $dbconfigpath = "./db.config.xml";    public static function getDBConfiguration() {

$dbconfig = array ();        try {            // 读取配置文件内容

$handle = fopen(self::$dbconfigpath, "r");            $content = fread($handle, filesize(self::$dbconfigpath));            // 获取xml文档根节点,进而获取相关的数据库信息

$mysql = simplexml_load_string($content);            // 将获取到的xml节点信息赋值给关联数组,方便接下来的方法调用

$dbconfig['host'] = $mysql-host;            $dbconfig['user'] = $mysql-user;            $dbconfig['password'] = $mysql-password;            $dbconfig['db'] = $mysql-db;            $dbconfig['port'] = $mysql-port;            // 将配置信息以关联数组的形式返回

return $dbconfig;

} catch ( Exception $e ) {            throw new RuntimeException ( "mark读取数据库配置文件信息出错!/markbr /" );

}        return $dbconfig;

}

}1234567891011121314151617181920212223242526272829

数据库连接池

对于PHP程序而言,优化永无止境。而数据库连接池就在一定程度上起到了优化的作用。其使得对用户的每一个请求而言,无需每次都像数据库申请链接资源。而是通过已存在的数据库连接池中的链接来返回,从时间上,效率上,都是一个大大的提升。

于是,这里简单的模拟了一下数据库连接池的实现。核心在于维护一个“池”。

从池子中取,用毕,归还给池子。

?php/**x

*  PHP中的数据库 工具类设计

*  郭璞

*  2016年12月23日

*

**/class DbHelper {    private $dbconfig;    private $dbpool;    public $poolsize;    public function __construct($poolsize = 20) {        if (! file_exists ( "./utils.php" )) {            throw new RuntimeException ( "markutils.php文件丢失,无法进行配置文件的初始化操作!/markbr /" );

}else {

require './utils.php';

}        // 初始化 配置文件信息

$this-dbconfig = XMLUtil::getDBConfiguration ();        // 准备好数据库连接池“伪队列”

$this-poolsize = $poolsize;

$this-dbpool = array ();        for($index = 1; $index = $this-poolsize; $index ++) {

$conn = mysqli_connect ( $this-dbconfig ['host'], $this-dbconfig ['user'], $this-dbconfig ['password'], $this-dbconfig ['db'] ) or die ( "mark连接数据库失败!/markbr /" );

array_push ( $this-dbpool, $conn );

}

}    /**

* 从数据库连接池中获取一个数据库链接资源

*

* @throws ErrorException

* @return mixed

*/

public function getConn() {        if (count ( $this-dbpool ) = 0) {            throw new ErrorException ( "mark数据库连接池中已无链接资源,请稍后重试!/mark" );

} else {            return array_pop ( $this-dbpool );

}

}    /**

* 将用完的数据库链接资源放回到数据库连接池

*

* @param unknown $conn

* @throws ErrorException

*/

public function release($conn) {        if (count ( $this-dbpool ) = $this-poolsize) {            throw new ErrorException ( "mark数据库连接池已满/markbr /" );

} else {

array_push ( $this-dbpool, $conn );

}

}

}

php怎么样连接sql数据库

1、软件配置

Win7 64 +wampserver2.2d-x32+SQL Server 2008 R2数据库,wamp2.2中的php版本是5.3.10。

Php环境也可以换成php+apache。

2、支持连接MySQL Server配置

php版本5.3以前,有php_mssql功能,可以使用,但是5.3及以后的版本不支持。

2.1、php连接mssql设置(php5.3以前版本)

(1)、打开php.ini,将

;extension=php_mssql.dll前面的分号(;)去掉,然后重启 Apache。如果不行的话,进行第2步。

(2)检查一下你的php安装目录下的ext下面有没有php_mssql.dll存在,如果没有,从重新下载一个php安装,要下载那个压缩包的才是最完整的。

如果ext目录下已经有了php_mssql.dll,那么你需要打开php.ini,找到

extension_dir = "./ext"

这一句(或者类似的,不一定是"./ext",查找"extension_dir"即可),然后把"./ext"修改为你的php安装目录的ext目录的完整路径,比如"c:/php/ext",或者"c:/program files/php/ext"这样。然后再次重启 Apache。如果还是不行的话,可能就需要第3步了。

(3)把 php 目录下的 ntwdblib.dll 和 php_mssql.dll 复制到 system32的系统目录中去,然后重起Apache。

(4)然后就可以连接MSSQL,并进行一些操作了。连接例子如下:

2.2、php连接sqlsrv(php5.3以及以上版本)

(1)、下载Microsoft Drivers for PHP for SQL Server,官方下载地址:,我使用的是SQLSRV2.0。

(2)、解压下载下来的文件将php_pdo_sqlsrv_53_ts_vc9.dll文件和php_sqlsrv_53_ts_vc9.dll文件复制到php安装目录下的ext文件夹中。此处根据版本不同使用的文件不同。

(3)、在php.ini中添加

extension=php_sqlsrv_53_ts_vc9.dll

extension=php_pdo_sqlsrv_53_ts_vc9.dll

到很多;extension=***.dll语句后面,注意extension_dir 指向的位置是否正确。

(4)、重启apache,然后访问访问地址/?Phpinfo=1,出现下面图片中的内容,则代表配置正确。

(5)、写测试代码,测试代码如下:

?php

header("Content-type: text/html; charset=utf-8");

$serverName = "localhost"; //数据库服务器地址$uid = "foodcert"; //数据库用户名$pwd = "foodcert"; //数据库密码$connectionInfo = array("UID"=$uid, "PWD"=$pwd, "Database"="FoodCert");

$conn = sqlsrv_connect( $serverName, $connectionInfo);if( $conn == false)

{

echo "连接失败!";

die( print_r( sqlsrv_errors(), true));

}else{

echo "连接成功!";  

}

$query = sqlsrv_query($conn, "select * from 数据库表");while($row = sqlsrv_fetch_array($query))

{

print_r($row);

}?

(6)、上面完成之后,测试代码的时候会出现连接失败,因为没有安装sql server nation client ,本地客户端,去下载合适的客户端,我使用的是Microsoft? SQL Server? 2012 Native Client,下载地址:

(7)、安装完成之后,在重新启动apache,然后访问就可以连接成功了。

(8)、注意:在php.ini文件所在的文件夹中必须要有ntwdblib.dll文件存在。

PHP是如何与数据库连接的?

php可以和很多数据库连接,都有内置函数,和哪一个数据库连接都有一个连接函数,但是都有一个特点,就是都需要服务器名,用户名,密码,连接成功就可以选择数据库,在执行SQL语句,找个PHP手册,里面各种对数据库操作的函数。

由于数据库很多,标准不统一,有机构用PHP写了一个统一的代码,例如adodb,使用的时候就只需要在连接的函数里面指出是那种数据库,减少很多不必要的麻烦。


当前名称:php怎么和数据库通信 php与数据库交互
分享链接:http://jkwzsj.com/article/hjeohg.html

其他资讯