PHP利用MySQLi函数连接数据库
PHP利用MySQLi函数连接数据库
一、连接数据库
- mysqli_connect
# 注意抑制符的使用 $link = @mysqli_connect('localhost','root','root2','test');
二、获取连接失败原因
- 错误号:mysqli_connect_errno
- 错误信息:mysqli_connect_error
if( mysqli_connect_errno() ){
var_dump(mysqli_connect_error());
}
三、选择操作的数据库
if(!mysqli_select_db($link,'wechat')){
var_dump(mysqli_errno($link).':'.mysqli_error($link));
}
四、选择字符集
if(!mysqli_set_charset($link,'utf-8')){
var_dump(mysqli_errno($link).':'.mysqli_error($link));
}
五、准备要执行的SQL语句
$sql = "SELECT * FROM `jk_message` ORDER BY id DESC";
注意:mysqli_real_escape_string(link,param);
六、执行SQL语句
$result = mysqli_query($link,$sql);
七、处理执行结果
- mysqli_num_rows 返回查询结果记录数
- mysqli_affected_rows 返回操作(增删改)影响的行数
- mysqli_fetch_row 获取一条数据的索引数组
- mysqli_fetch_assoc 获取一条数据的关联数组
- mysqli_insert_id() 获取新增记录的id
while ($rows = mysqli_fetch_assoc($result)){
var_dump($rows);
}
八、释放资源、关闭连接
- 释放资源:mysqli_free_result
- 关闭连接:mysqli_close
mysqli_free_result($result);
mysqli_close($link);
配置文件
define('DB_HOST','127.0.0.1'); //主机..
define('DB_USER','root'); //管理员
define('DB_PWD','jack123456'); //密码
define('DB_PREFIX','ps_'); //定义前缀常量..
define('DB_NAME','panshinet'); //这里我们先这么定义..注意这里是库名
define('DB_CHARSET','utf8'); //定义字符集..
实例:
//连接数据库
$link=@mysqli_connect("localhost","root","root","jkdb");
if(!$link){
//写入错误日志
$logs=date("Y-m-d H:i:s").mysqli_connect_error().PHP_EOL;
file_put_contents("mysql.err",$logs,FILE_APPEND);
}
//设置字符集
if(!mysqli_set_charset($link,"utf8")){
$logs=date("Y-m-d H:i:s")."设置字符集失败".PHP_EOL;
file_put_contents("mysql.err",$logs,FILE_APPEND);
}
//查询
$sql="select money from user where username='张无忌'";
$res=mysqli_query($link,$sql);
$money=mysqli_fetch_assoc($res)["money"];
var_dump($money);
//关闭数据库
mysqli_free_result($res);
mysqli_close($link);
PHP利用MySQLi函数连接数据库的更多相关文章
- mysqli函数库的使用
综述 1.什么是mysqli PHP-MySQL 函数库是 PHP 操作 MySQL 资料库最原始的扩展库,PHP-MySQLi 的 i 代表 Improvement ,相当于前者的增强版,也包含了相 ...
- 利用JavaScript函数对字符串进行加密
加密.解密问题对我来说一直是很神秘的,感到神奇无比. 理论了解 前段时间看到关于利用JavaScript函数unescape()和escape()对字符串进行替换处理.通过查资料得知, escape( ...
- 【编程题目】请修改 append 函数,利用这个函数实现两个非降序链表的并集
42.请修改 append 函数,利用这个函数实现(链表):两个非降序链表的并集,1->2->3 和 2->3->5 并为 1->2->3->5另外只能输出结 ...
- PHP获取毫秒时间戳,利用microtime()函数
PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数.php的毫秒是没有默认 ...
- PHP利用socket_bind函数切换IP地址采集数据
在利用PHP进行数据采集的过程中,通常会遇到IP被屏蔽或出现验证码的情况:为了能够继续采集,我们需要切换不同的ip,每访问一次,随机切换一个IP.当然也可以通过收集大量代理,通过切换代理的方式进行采集 ...
- 黑马程序员——利用swap函数研究C的指针
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 设计3个函数,分别实现已下功能: 交换两个整数 交换两个整形指针 交换任意两个同类型的变量 #i ...
- 利用Format函数格式化时间和日期
在做机房收费系统的时候,因为需要使用到日期进行查询,所以在数据表中没有使用自动添加日期的功能,而是采用了自定义的格式插入.但由于事先没有对时间转换的格式进行统一,导致后面查询时出现的问题不断. 插入时 ...
- (转)Java程序利用main函数中args参数实现参数的传递
Java程序利用main函数中args参数实现参数的传递 1.运行Java程序的同时,可以通过输入参数给main函数中的接收参数数组args[],供程序内部使用!即当你在Java命令行后面带上参数,J ...
- 利用freopen()函数和fc命令简化程序调试
大家在参加ACM比赛或者参加c/c++实验技能竞赛的时候,如果遇到大量的输入和大量的输出时,调试起来很不方便.一来如果结果不正确的话,需要重复输入大量数据:二来如果大量输出的话,得仔细检查输出结果与正 ...
- 利用copy函数简单快速输出/保存vector向量容器中的数据
如果要输出vector中的数据我们可以通过循环语句输出,更加简便的方法是利用copy函数直接输出,例子: #include "stdafx.h" #include <iost ...
随机推荐
- SpringCloud学习 系列四、微服务中心 Eureka介绍及创建一个Eureka中心服务
系列导航 SpringCloud学习 系列一. 前言-为什么要学习微服务 SpringCloud学习 系列二. 简介 SpringCloud学习 系列三. 创建一个没有使用springCloud的服务 ...
- <vue 路由 3、路由代码跳转>
说明:在上一节的工程下继续讲解 一. 知识点说明 业务开发中更多的是使用代码方式进行页面的跳转会用到this.$router.push('/') 和this.$router.replace(' ...
- 在vue项目中使用momentjs获取今日、昨日、本周、本月、上月、本年、上年等日期,时间比较计算
https://blog.csdn.net/qq_15058285/article/details/119925056
- [VS工程技巧]远程调试工具及dump文件来检查程序崩溃及异常等问题
做什么 之前有一次梦中所得,既然可以让vs附加到进程去调试活动的dll,那要是可以让我本地的电脑去调试别人客户端或者测试环境的DLL就好了,这样就可以不通过dbgview去一个个输出看,而是可以直接调 ...
- AMBA总线介绍-01
AMBA总线介绍 AMBA总线概述 AHB APB 不同IP之间的互连 1.系统总线简介 系统芯片中各个模块之间需要有接口连接,使用总线作为子系统之间共享的通信链路 优点:成本低,方便易用(通用协议, ...
- [转帖]tikv性能参数调优
https://www.cnblogs.com/FengGeBlog/p/10278368.html#:~:text=max-%20bytes%20-for-level-%20base%20%3D%2 ...
- [转帖]Jmeter 压测中配置https证书
本文章 主要介绍证书的获取.处理.配置到jmeter中. 1. 获取证书 首先:谷歌浏览器 打开网站,点击 地址栏的锁(表示https),选择 "证书"---"隐私.搜索 ...
- [转帖]paramiko简介
https://www.cnblogs.com/qiujichu/p/12048763.html 一.什么是paramiko 要想明白什么是paramiko,要先明白ssh协议. 二.什么是ssh协议 ...
- [转帖]简单理解Linux的Memory Overcommit
https://zhuanlan.zhihu.com/p/551677956 Memory Overcommit的意思是操作系统承诺给进程的内存大小超过了实际可用的内存.一个保守的操作系统不会允许me ...
- [转帖]03-rsync传输模式(本地传输、远程方式传输、守护进程模式传输)
https://developer.aliyun.com/article/885801?spm=a2c6h.24874632.expert-profile.282.7c46cfe9h5DxWK 简介: ...