TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码
搜索到 22 篇与 的结果
2022-06-10

PHP面向对象封装MySQL PDO(已使用预处理)

PHP面向对象封装MySQL PDO(已使用预处理)
Mysql.class.php<?php class Mysql { public $link; public function __construct() { $this->conn(); } /** * 连接数据库,从配置文件读取配置信息 */ public function conn() { $cfg = require 'config.php'; try { $this->link = new PDO("mysql:dbname={$cfg['databaseName']};host={$cfg['host']};charset={$cfg['charset']};port={$cfg['port']}", $cfg['name'], $cfg['password']); $this->link->setAttribute(PDO::ATTR_EMU...
2022年06月10日
872 阅读
0 评论
2021-08-14

PHP防止SQL注入

PHP防止SQL注入
SQL注入的万能语句' or 1=1#当我们在用户名处输入' or 1=1#,密码随便写,把它带入到语句中,就变成了select * from user where uername='' or1=1#' and password='123456' 在SQL语句中#是注释符,所以后面的语句都会被注释掉select * from user where username='' or1=1 也就是说可以用 'or 1=1# 这么一个字符串就可以绕开登录的密码,直接进入程序,防止这种情况出现,可以使用以下的预处理机制!使用 PDO1、通过传递一个插入值的数组执行一条预处理语句$st = $db->prepare('select * from zz_order where id = ? and name = ?'); $st->execute([$id,$name]);// 成功时返回 true,失败时返回 false $data = $st->fetch(PDO::FETCH_ASSOC); print_r($data); 2、在 prepare 函数里面把参数用 ‘:n...
2021年08月14日
941 阅读
0 评论
2021-08-05

mysql插入数字都变成2147483647的解决方法

mysql插入数字都变成2147483647的解决方法
在用Excel导入数据的时候,碰到11位的数字都变成2147483647,原因是int类型的数据,最大只能到2147483647,所以11位的都变成了2147483647,解决办法:把字段类型由int改为bigint,就可以了.下面是mysql的数据类型详解1.整型(xxxint)MySQL数据类型含义tinyint(m)1个字节表示(-128~127)smallint(m)2个字节表示(-32768~32767)mediumint(m)3个字节表示(-8388608~8388607)int(m)4个字节表示(-2147483648~2147483647)bigint(m)8个字节表示(+-9.22*10的18次方)2.浮点型(float和double)MySQL数据类型含义float(m,d)单精度浮点型,8位精度(4字节),m是十进制数字的总个数,d是小数点后面的数字个数double(m,d)双精度浮点型,16位精度(8字节)参数m只影响显示效果,不影响精度,d却不同,会影响到精度。比如设一个字段定义3.定点数(decimal) decimal(m,d) 定点类型浮点型在数据...
2021年08月05日
1,078 阅读
0 评论
2021-05-10

PHP查询大量数据内存耗尽问题的解决方法

PHP查询大量数据内存耗尽问题的解决方法
从数据库查询大量数据时会出现内容不够的提示:PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 这个问题在PHP的官方网站上叫缓冲查询和非缓冲查询(Buffered and Unbuffered queries)。PHP的查询缺省模式是缓冲模式。也就是说,查询数据结果会一次全部提取到内存里供PHP程序处理。这样给了PHP程序额外的功能,比如说,计算行数,将指针指向某一行等。更重要的是程序可以对数据集反复进行二次查询和过滤等操作。但这种缓冲查询模式的缺陷就是消耗内存,也就是用空间换速度。相对的,另外一种PHP查询模式是非缓冲查询,数据库服务器会一条一条的返回数据,而不是一次全部返回,这样的结果就是PHP程序消耗较少的内存,但却增加了数据库服务器的压力,因为数据库会一直等待PHP来取数据,一直到数据全部取完。很显然,缓冲查询模式适用于小数据量查询,而非缓冲查询适应于大数据量查询。对于PHP的缓冲模式查询大家都知道,下面列举的例子是如何执行非缓冲查询API。非缓冲查询方法一: mysqli<?ph...
2021年05月10日
976 阅读
0 评论
2021-01-04

PHP面向对象封装MySQL操作函数、文件上传

PHP面向对象封装MySQL操作函数、文件上传
Mysql.class.php<?php class Mysql { public $link; public function __construct() { $this->conn(); } /** * 连接数据库,从配置文件读取配置信息 */ public function conn() { $cfg = require 'config.php'; $this->link = new mysqli($cfg['host'], $cfg['name'], $cfg['password'], $cfg['databaseName'], $cfg['port']); $this->query('set names ' . $cfg['charset']); } /** * 发送query查询 * @param string $sql sql语句 * @return m...
2021年01月04日
1,212 阅读
0 评论
2020-12-05

MySQL中varchar与char的区别

MySQL中varchar与char的区别
区别一,定长和变长char 表示定长,长度固定,varchar表示变长,即长度可变。char如果插入的长度小于定义长度时,则用空格填充;varchar小于定义长度时,还是按实际长度存储,插入多长就存多长。因为其长度固定,char的存取速度还是要比varchar要快得多,方便程序的存储与查找;但是char也为此付出的是空间的代价,因为其长度固定,所以会占据多余的空间,可谓是以空间换取时间效率。varchar则刚好相反,以时间换空间。区别之二,存储的容量不同对 char 来说,最多能存放的字符个数 255,和编码无关。而 varchar 呢,最多能存放 65532 个字符。varchar的最大有效长度由最大行大小和使用的字符集确定。整体最大长度是 65,532字节。
2020年12月05日
797 阅读
0 评论
2020-12-02

PHP 封装MySQL操作函数、魔术常量、封装函数

PHP 封装MySQL操作函数、魔术常量、封装函数
mysql.php<?php /** * mysql.php mysql系列操作函数 * @author nianbaibai */ /** * 连接数据库 * * @return resource 连接成功,返回连接数据库的资源 */ function mConn() { static $conn = null; if ($conn === null) { $db = require ROOT . '/lib/config.php'; $conn = mysqli_connect("$db[host]", "$db[name]", "$db[password]", "$db[databaseName]", "$db[port]"); mysqli_query($conn, 'set names ' . $db['charset']); } return $conn; } /...
2020年12月02日
984 阅读
0 评论
2020-11-16

解决Fatal error: Uncaught Error: Call to undefined function mysql_connect() in ...

解决Fatal error: Uncaught Error: Call to undefined function mysql_connect() in ...
因为mysql_connect()从PHP5.5开始就不在支持了,所以PHP5.5以上的需要用mysqli_connect()!平常的连接数据库PHP代码:<?php $con=mysql_connect('localhost','root','mm'); if($con) { echo 'link ok'; }else { echo 'error'; } ?> 这里mysql_connect()这个函数不在使用,不要在跟着网上修改php.ini文件了,改成mysqli_connect()就可以了,mysql加个i,修改为:<?php $con=mysqli_connect('localhost','root','mm'); if($con) { echo 'link ok'; }else { echo 'error'; } ?>
2020年11月16日
1,313 阅读
0 评论

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

最新回复

  1. 强强强
    2025-04-07
  2. jesse
    2025-01-16
  3. sowxkkxwwk
    2024-11-20
  4. zpzscldkea
    2024-11-20
  5. bruvoaaiju
    2024-11-14

标签云