跳转到主内容
极星编程网:以代码为星,赴技术山海!

一些简单的PHP连接数据库例子详解

本文章来给各位php入门者详细关于php连接数据库的实例代码,这里主要讲到了入门级的mysql连接代码到高级的封装数据库连接类,希望此文章对各位朋友所有帮助。

连接mysql数据库

的两种方法:

(1)利用PHP的数据库函数连接此方式是最常用的一种方式.

这里主要用到四个数据库函数:mysql_connect () 建立与MySQL服务器的连接。

mysql_select_db ():选择MySQL服务器中的数据库供以后的数据查询操作query处理。

mysql_query ():送出query字符串以帮助MySQL做相关的处理或执行。

mysql_fetch_row ():用来将查询结果result单行移到数组变量中。数组的索引是数字索引,第一个索引值是0。

(2)通过ODBC连接PHP通过ODBC连接MySQL数据库主要用到四个函数:Odbc_connect ():用来同ODBC数据源建立连接。

Odbc_do ():用来在建立连接之后执行数据库查询。

Odbc_result():用于取得当前记录行中某个字段的值。

Odbc_fetch_row ():用来把查询结果保存到数组,每个数组元素对应一条记录。

我们先来看PHP的数据库函数连接 方法实例连接到一个 MySQL 数据库在您能够访问并处理数据库中的数据之前,您必须创建到达数据库的连接。

立即学习“PHP免费学习笔记(深入)

”;

在 PHP 中,这个任务通过 mysql_connect() 函数完成。

语法mysql_connect(servername,username,password);参数 描述servername 可选。规定要连接的服务器。默认是 "localhost:3306"。

username 可选。规定登录所使用的用户名。默认值是拥有服务器进程的用户的名称。

password 可选。规定登录所用的密码。默认是 ""。

代码如下复制代码$con = mysql_connect("localhost","root","");if (!$con){die('Could not connect: ' . mysql_error());}mysql_close($con);?>面向对象mysqli(详细教程)

代码如下复制代码$mysqli = new mysqli('localhost','root','','volunteer');if (mysqli_connect_errno()){die('Unable to connect!'). mysqli_connect_error();}?>pdo连接mysql(详细教程)

PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。

下载代码如下复制代码$db = new PDO('mysql:host=localhost;dbname=test', 'root', '');try {foreach ($db->query('select * from user') as $row){print_r($row);}$db = null;  //关闭数据库} catch (PDOException $e) {echo $e->getMessage();}?>然后我们还可以使用ODBC连接数据库代码如下复制代码require_once './adodb5/adodb.inc.php';$conn = &ADONewConnection('mysql');$conn->connect('localhost','root','','test');$conn->Execute("set names utf8");$res = $conn->Execute("select * from user");if (!$res){echo $conn->ErrorMsg();}else{var_dump($res);}?>mysql数据连接类代码如下复制代码//------------------------------------------------------------------------------------------// ※Database()                   构造函数,数据库初始参数// ※Select()                     查询// ※GetRows()                    返回查询的记录总数// ※Insert()                     插入记录// ※Update()                     更新// ※Delete()                     删除// ※Halt()                       中断并显示错误信息*///------------------------------------------------------------------------------------------define("DATABASETYPE", "1");       //定义数据库类型:1为MySql;2为SQL Server;3为Oracle;4为Odbcdefine("SERVER", "localhost");     //Host name or IP address of the database serverdefine("DATABASE", "dbName");   //要连接的数据库名define("USER", "tableName");     //用于连接数据库的用户名define("PASSWORD", "paswd");    //用于连接数据库的密码class Database {var $dbLink;                      //连接句柄var $result;                      //查询句柄var $insId;                       //Insert()成功返回AUTO_INCREMENT列的值var $rows;                        //返回数据数组var $numRows;                     //返回数据数目var $dbHost, $dbUser, $userPassword, $database;var $dbType = DATABASETYPE;var $msgFlag = "yes";            //yes:show the Mysql message ; no: die by show "Halted."function Database($dbHost = SERVER, $dbUser = USER, $userPassword = PASSWORD, $database = DATABASE) {switch ($this->dbType) {case 1:$this->dbLink = @mysql_pconnect($dbHost, $dbUser, $userPassword); // or die("Can't Connect to Remote Host!");@mysql_select_db($database, $this->dbLink); // or die ("Can't Connect to Remote Host!");break;case 2:break;}return true;}/* SQL:Select() 返回为false无结果 */function Select($table, $columns, $condition = 1) {$sql = "select $columns from $table where $condition ";$this->result = @mysql_query($sql, $this->dbLink);unset($this->rows);if ($this->result) {$i = 0;if (!($this->rows = array("$i" => @mysql_fetch_array($this->result))))return false;if (($this->numRows = @mysql_num_rows($this->result)) == 0)return false;while ($tempRows = @mysql_fetch_array($this->result)) {array_push($this->rows, $tempRows);}} else {$this->Halt($sql);return false;}return true;}/* SQL:GetRows() 返回查询的记录总数 */function GetRows($table, $condition = 1) {$sql = "select count(1) as count from $table where $condition";$this->result = @mysql_query($sql, $this->dbLink);if ($this->result) {$temp = @mysql_fetch_array($this->result);$this->numRows = $temp[count];} else {$this->Halt($sql);return false;}return $this->numRows;}/* SQL:Insert() */function Insert($table, $columns, $values) {$sql = "insert into $table ($columns) values ($values)";$this->result = @mysql_query($sql, $this->dbLink);if ($this->result)$this->insId = @mysql_insert_id($this->dbLink);else {$this->Halt($sql);return false;}return true;}/* SQL:Update() */function Update($table, $setings, $condition) {$sql = "update $table set $setings where $condition";$this->result = @mysql_query($sql, $this->dbLink);if ($this->result)$this->numRows = @mysql_affected_rows($this->result);else {$this->Halt($sql);return false;}return true;}/* SQL:Delete */function Delete($table, $condition) {$sql = "delete from $table where $condition";$this->result = @mysql_query($sql, $this->dbLink);if ($this->result)$this->numRows = @mysql_affected_rows($this->result);else {$this->Halt($sql);return false;}return true;}/* Halt():error message */function Halt($msg) {if ($this->msgFlag == "yes") {printf("Database Query Error:%sn", $msg);printf("MySql Error:%sn", mysql_error());}elseecho ""; //自定一个出错提示文件return false;}}switch ($db->dbType) {case 1:@mysql_close();break;case 2:break;}$db = new Database();?>友情提示如果出现连接mysql数据库中文乱码我们可以在连接数据库查询之前加上mysql_query("set names utf8"); 如果你是gbk就使用gbk编编码了

相关文章