首页 > 后端开发 > 正文

php框架mysql连接方式 php如何链接mysql?

2023-09-19 02:35:36 | 我爱编程网

今天我爱编程网小编整理了php框架mysql连接方式 php如何链接mysql?相关信息,希望在这方面能够更好的大家。

php框架mysql连接方式 php如何链接mysql?

如何通过PHP实现Mysql数据库连接、查询、记录集等操作


在PHP网站开发中,经常需要对Mysql数据库进行操作,大体上需要经过以下几个步骤:Mysql数据库链接、Mysql数据库查询、Mysql记录集操作等,如果每次都重复上述操作,不但繁琐,而且代码冗余度高,对此我整理了部分利用PHP实现Mysql数据库操作的代码,以函数的形式贴出,可根据自行需要添加其他功能或者整合成Mysql数据库类。
Mysql数据库链接代码
function dbConnect($hostname,$username,$pass,$db_name,$pconnect = 0)
{
$func = empty($pconnect) ? 'mysql_connect' : 'mysql_pconnect';
if(!$connect) {
$connect = @$func($hostname,$username,$pass) or die("Mysql_Error : ".mysql_error()."
Mysql Error Num : ".mysql_errno()."");
}
@mysql_select_db($db_name, $connect) or die(" Mysql_Error : ".mysql_error()."
Mysql Error Num : ".mysql_errno()."");
return $connect;
}注释:
参数$hostname,$username,$pass,$db_name分别代表Mysql数据库服务器地址,用户名,密码,以及连接的数据库名,通常情况下hostname一般都是localhost或者127.0.0.1。参数$pconnect默认为0,表示通常情况下是以mysql_connect函数连接Mysql数据库。
知识点:
mysql_connect与mysql_pconnect的区别:当执行完当前PHP程序后,PHP自动关闭mysql_connect建立的数据库连接,而mysql_pconnect返回一个持久稳固的数据库连接,在一定时间内有下一个连接请求时可以被复用,节省了反复连接Mysql数据库的时间,使得访问速度加快,其适用于并发访问量不大的情况,如并发访问量比较大,则可能会因为Mysql已达到最大连接数, 使之后的请求得不到满足。
mysql_error函数:返回上一个Mysql操作产生的文本错误信息。mysql_errno函数返回上一个Mysql操作中的错误号码,如果没有出错则返回0。
Mysql数据库查询代码
function query_error($query)
{
global $connect;
$temp_bar = "
=============================================================================
";
$result = mysql_query($query, $connect) or die("DB ERROR
".$temp_bar." Mysql_Query : ".$query."
Mysql_Error : ".mysql_error()."
Mysql Error Num : ".mysql_errno()."".$temp_bar);
return $result;
}注释:此函数为Mysql数据库查询函数,等于同mysql_query函数的功能,如果出错则输出出错信息(SQL语句),其实为了防止暴露网站数据库的结构,正式商用时,最好不要输出SQL执行语句。
Mysql记录集操作函数代码(mysql_fetch_array)
function fetch_array($result,$result_type = MYSQL_ASSOC,$records = "one")
{
if ($records == "one") {
return @mysql_fetch_array($result,$result_type);
}
else {
for ($i=0;num_rows($result);$i++)
{
$info[$i] = @mysql_fetch_array($result,$result_type);
}
free_result($result);
return $info;
}
}注释:此函数的功能由mysql_fetch_array函数延生而来,在此基础上我增加了对Mysql数据库记录集的读取功能,并以数组形式返回获取的值。
知识点:
mysql_fetch_array函数是mysql_fetch_row函数的扩展版本。第二个参数 result_type有三个值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。默认值是 MYSQL_BOTH。MYSQL_BOTH:得到一个同时包含关联和数字索引的数组。MYSQL_ASSOC:只得到关联索引(如同mysql_fetch_assoc()那样),MYSQL_NUM :得到数字索引(如同 mysql_fetch_row()那样)。
报错信息函数代码
function error_msg($msg, $url= "")
{
global $connect;
if($connect) {
mysql_close($connect);
}
switch ($url)
{
case "":
$url = "history.go(-1)";
break;
case "close":
$url = "window.close()";
break;
default:
$url = "document.location.href = '$url'";
break;
}
if (!empty($msg)) {
echo "<script language='javascript'>alert('$str');$url;</script>";
}
else{
echo "<script language='javascript'>$url;</script>";
}
exit;
}注释:此函数的功能主要以alert的形式报错并进行页面跳转,是一个通用函数,报错或跳转之前其会先将Mysql数据库连接关闭,用到了mysql_close函数。
调用说明:
从上述Mysql数据库操作的函数代码中,我们可以看到$connect变量是一个全局变量,首先将上述几个函数放入一个文件,如mysqlconnect.php中,然后在声明相关变量并赋值,在dbConnect函数声明后调用此Mysql数据库连接函数,即:
$hostname = "mysqlserveraddr";
$username = "yourusername";
$pass = "youruserpass";
$db_name = "yourdatabase";
$connect = dbConnect($hostname,$username,$pass,$db_name);通过上面几个Mysql数据库连接、数据库查询、数据库记录集操作函数代码的讲解,在PHP网站开发中Mysql数据库操作的基本函数已包括,根据需要可在此代码基础上改成Mysql数据库类或者利用PHP添加其他的Mysql数据库操作函数都是可行的,更多相关推荐请关注Gxl网。

php框架mysql连接方式 php如何链接mysql?

php连接数据库,php连接mysql并查询的几种方式




$config = [
‘host‘=>‘127.0.0.1‘, //数据库地址
‘name‘=>‘test‘, //库名
‘user‘=>‘root‘, //数据库用户名
‘pass‘=>‘root‘ //数据库密码
];
$db = mysqli_connect($config[‘host‘],$config[‘user‘],$config[‘pass‘],$config[‘name‘]);if(!$db){die(‘数据库连接失败,请检查配置信息:‘ . mysqli_connect_error());}//设置数据库编码格式 或者说指定了客户端和服务器之间传递字符的编码规则为UTF8mysqli_query($db,"set names utf8");//进行数据查询 比如我要查询user表内所有用户的Id,name //封装一下sql语句$sql = ‘select Id,name form user‘;//把查询结果放到变量里面 或者说把查询成功后返回的资源标识符放到变量 $row$row = mysql_query($db,$sql);//判断是否为空,为空则查询失败if(empty($row)){die("查询数据失败");}//判断查询结果是否为0条if(mysqli_num_rows($row) > 0){//把查询结果打印出来 while($row = mysqli_fetch_assoc($result)) { echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>"; }}
PHP连接数据库 面向对象
$config = [
‘host‘=>‘127.0.0.1‘, //数据库地址
‘name‘=>‘test‘, //库名
‘user‘=>‘root‘, //数据库用户名
‘pass‘=>‘root‘ //数据库密码
];
//连接数据
$db = new mysqli($config[‘host‘],$config[‘user‘],$config[‘pass‘],$config[‘name‘]);
//判断数据库是否连接失败
if($db->errno > 0)
{
die("数据库连接失败" . $db->error);
}
//如上面那个 写sql语句
$sql = "select Id,name form user";
//把查询结果放到变量里
$con = $db->query($sql);
//判断查询结果是否为0
if($con->num_rows >0)
{
//打印查询结果
while($row = $con->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
}
PHP连接数据 PDO以及预处理
echo "<table ;
echo "<tr><th>Id</th><th>Firstname</th><th>Lastname</th></tr>";
//定义一个类,方便一会打印
class TableRows extends RecursiveIteratorIterator {
function __construct($it) {
parent::__construct($it, self::LEAVES_ONLY);
}
function current() {
return "<td . parent::current(). "</td>";
}
function beginChildren() {
echo "<tr>";
}
function endChildren() {
echo "</tr>" . "\n";
}
}

$servername = "127.0.0.1"; //数据库地址
$username = "root"; //用户名
$password = "root"; //数据库密码
$dbname = "test"; //数据库库名
//使用异常处理来获取错误信息
try {
//先new PDO类并把数据库配置传入进去
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
//设置错误级别
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//把sql语句传入
$stmt = $conn->prepare("SELECT Id,name FROM user");
//执行
$stmt->execute();
// 设置结果集为关联数组
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
//通过foreach 和RecursiveIteratorIterator 把查询结果给打印出来
foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
echo $v;
}
}
catch(PDOException $e) {
//如果捕捉到错误就打印出错误信息
echo "PDO错误: " . $e->getMessage();
}
$conn = null;
echo "</table>";
php连接数据库,php连接mysql并查询的几种方式
标签:serverleavetorexecusername服务地址信息hal

php框架mysql连接方式 php如何链接mysql?

php如何链接mysql?

  • 在能够访问并处理数据库中的数据之前,必须创建到达数据库的连接。

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

  • 工具原料:电脑+php+mysql

php链接mysql的方法如下:

先做出如下假设(也适用与方法二和方法三)

$username=your_name;

$userpass=your_pass;

$dbhost=localhost;

$dbdatabase=your_database;

//生成一个连接

$db_connect=mysql_connect($dbhost,$username,$userpass) or die("Unable to connect to the MySQL!");

//选择一个需要操作的数据库

mysql_select_db($dbdatabase,$db_connect);

//执行MySQL语句

$result=mysql_query("SELECT id,name FROM user");

//提取数据

$row=mysql_fetch_row($result);

注意事项:代码注释已经说明了一切。不过这里还需要做一些补充。

①在mysql_connect()、mysql_select_db()等函数之前使用@(错误控制运算符),可以忽略掉系统产生的错误信息,然后用die()来自定义错误信息;

②提取数据的时候,除了上面的mysql_fetch_row,常见的还有mysql_fetch_assoc和mysql_fetch_array,具体差别请查阅PHP Manual;

③对于mysql_query()函数的返回值,如果执行的语句有返回值(如SELECT、SHOW、DESCRIBE等),则返回相应数据(成功时)或FALSE(失败时);如果执行的语句没有返回值(如DELETE、DROP、INSERT、UPDATE等),则返回TRUE(成功时)或FALSE(失败时)。

  • 方法二、面向对象

其实这种方法和普通方法非常类似,只是把相应的函数换成了面向对象方法,直接看代码。

$db=new mysqli($dbhost,$username,$userpass,$dbdatabase);

if(mysqli_connect_error()){

echo 'Could not connect to database.';

exit;

}

$result=$db->query("SELECT id,name FROM user");

$row=$result->fetch_row();

这里用到的是mysqli,意思就是mysql的扩展,既可以通过面向过程的方式也可以通过面向对象的方式与数据库进行交互,唯一不同的是调用函数(对象方法)的方式不一样。

  • 方法三、PDO方法

PDO其实是PHP Database Objects的缩写,中文即PHP数据库对象。它提供了一种统一的PHP与数据库交互的方法。

这是目前流行的一种连接数据库的方法。它的优势在于:只要正确提供数据源,余下对于数据库的基本操作都是一样的。也就是说,同一段代码既可以同MySQL交互,也可以和SQLite3交互,当然也可以和PostgreSQL进行交互,前提是你提供了正确的数据源。下面看一下连接MySQL的代码:

$dsn='mysql:host='.$dbhost.';dbname='.$dbdatabase.';'

$dbh=new PDO($dsn,$username,$userpass);

如果是SQLite3,直接使用下面的代码:

$dsn='sqlite3:"C:\sqlite\user.db"';

$dbh=new PDO($dsn);

如果是PostgreSQL,下面的代码能够对付:

$dsn='pgsql:host='.$dbhost.' port=5432 dbname='.$dbdatabase.' user='.$username.' password='.$userpass;

$dbh=new PDO($dsn);

跟数据库成功建立连接之后,下面就只需要从数据库获取数据或插入更新数据,实例代码如下:

$stmt=$dbh->query('SELECT id,name FROM user');

$row=$stmt->fetch();

综上所述有三种方法链接mysql

以上就是我爱编程网小编给大家带来的php框架mysql连接方式 php如何链接mysql?全部内容,希望对大家有所帮助!
与“php框架mysql连接方式 php如何链接mysql?”相关推荐
php搜索mysql框架 php如何连接mysql?
php搜索mysql框架 php如何连接mysql?

php如何连接mysql并查询数据php连接mysql并查询数据的方法:首先创建PHP示例文件;然后通过用户名密码连接数据库;最后通过查询语句“select*fromgoods”进行查询即可。推荐:《PHP视频教程》php连接、查询mysql数据库&lt;?php/***CreatedbyPhpStorm.*User:karnetkarnet*Date:17/3

2023-09-07 09:41:32
php框架mysql连接池 PHP如何实现数据库连接池
php框架mysql连接池 PHP如何实现数据库连接池

PHP如何实现数据库连接池PHP如何实现数据库连接池首先定义一个类并声明一个属性作为连接池子;然后在构造方法中向池子进行填充连接实例;最后再定义一个取出方法和放回方法,取出时将连接池最后一个连接实例进行出栈并返回,放回时将连接实例压入连接池末栈即可。实例代码:&lt;?phpnamespaceDbConnect;classPool{protected$size

2023-09-27 21:41:49
php框架连接数据库 PHP7连接mysql数据库方法
php框架连接数据库 PHP7连接mysql数据库方法

几种常用PHP连接数据库的代码示例PHP连接数据库之PHP连接MYSQL数据库代码&lt;?php$mysql_server_name=localhost;//改成自己的mysql数据库服务器$mysql_username=root;//改成自己的mysql数据库用户名$mysql_password=;//改成自己的mysql数据库密码

2023-10-04 11:14:00
php框架mysql连接怎么优化 mysql联接优化器是如何优化join顺序的
php框架mysql连接怎么优化 mysql联接优化器是如何优化join顺序的

phpphpfor循环查询数据库效率低,该如何优化mysqlmysql那就用sphinx技术,目前这个是最好的,没有之一。下面是我百度百科弄过来的,怎么使用还得你自己看白皮书了。Sphinx的主要特性包括:高速索引(在新款CPU上,近10MB/秒);高速搜索(2-4G的文本量中平均查询速度不到0.1秒);高可用性(单CPU上最大可支持100GB的文本,100M文档);

2023-09-29 13:37:45
php框架连接数据库操作 PHP7连接mysql数据库方法
php框架连接数据库操作 PHP7连接mysql数据库方法

PHP7连接mysql数据库方法1、用mysql_connect的方法,PHP7会报致命错误$conn=mysql_connect('localhost','xueyanxiang','xueyanxiang');Fatalerror:UncaughtError:Calltoundefinedfunctionmysql_connect()in/Users/xueyanxiang/

2023-10-06 12:00:25
php哪个框架适合连接mssql PHP连接Mssql和Mysql的正确方法
php哪个框架适合连接mssql PHP连接Mssql和Mysql的正确方法

php源码怎么连mssql数据库php源码怎么连mssql数据库?如果实现了PHP和MySQL链接了,PHP和MSSQL的链接其实很简单;支持MSSQL的本地链接和远程链接,以本地链接为例:机器上安装了MSSQLServer2005;连接前配置系统:1.检查文件php5.2.5\ntwdblib.dll默认下面有一个,不能连接再替换.下载正确版本的ntwdblib

2023-09-29 06:55:47
php框架mysql连接怎么优化 php php for循环查询数据库效率低,该如何优化mysql mysql
php框架mysql连接怎么优化 php php for循环查询数据库效率低,该如何优化mysql mysql

mysql联接优化器是如何优化join顺序的在开始演示之前,我们先介绍下两个概念。概念一,数据的可选择性基数,也就是常说的cardinality值。查询优化器在生成各种执行计划之前,得先从统计信息中取得相关数据,这样才能估算每步操作所涉及到的记录数,而这个相关数据就是cardinality。简单来说,就是每个值在每个字段中的唯一值分布状态。比如表t1有100行记录,其中

2023-09-29 13:37:04
php框架端口 php 连接mysql 代码 端口号是3307!
php框架端口 php 连接mysql 代码 端口号是3307!

php连接mysql代码端口号是3307!php连接mysql脚本如下:$host = 'mysql服务器ip或域名';$port = 3307;//mysql端口号,默认为3306,此处为3307$user = 'mysql用户名';$pwd = '密码';$link = @mysql_connect("{$host}:{$port}", $user, $pwd, true);if(

2023-09-03 22:11:55