thinkphp解决数据传入数据库中特殊字符的问题小结

 更新时间:2024年03月18日 15:14:32   作者:二十五号底片~  
这篇文章主要介绍了thinkphp解决数据传入数据库中特殊字符的问题,为了解决这个问题,你需要确保在插入数据库之前,不对文本内容进行HTML实体编码,需要的朋友可以参考下

thinkphp解决数据传入数据库中特殊字符的问题

为了解决这个问题,你需要确保在插入数据库之前,不对文本内容进行HTML实体编码。如果你是从前端获取的数据,检查是否在发送请求前使用 htmlspecialchars() 或类似方法进行了转义。如果是后端处理逻辑导致的转义,那么在插入数据库之前取消转义或避免对其进行转义。

如果是在 Laravel 框架下,一般不需要手动处理此类转义问题,因为 Eloquent ORM 在处理字符串时不会自动进行HTML实体编码。但如果你确实遇到了这种情况,可以使用 PHP 的 html_entity_decode() 函数还原原始字符串

例子

$operation_code = html_entity_decode($name, ENT_QUOTES, 'UTF-8');
$data = [
    'operation_seq_num' => $num,
    'wip_entity_name' => $wip_entity_name,
    'operation_code' => $operation_code,
    'creation_date' => time(),
    'begin_date' => time(),
    'employee_num' => $employee_num,
    'created_by' =>  $username
];
db::table('wip_production')->insert($data);

扩展:

Thinkphp3.2如何处理大规模并发写入问题

1.大规模并发写入,出现数据库锁死,数据写入失败,数据表损坏等问题

2.锁表需要配合事务使用

3.具体代码如下

M()->startTrans();
$lot_check = M()->table('order')->lock(true)->where(['id' => $id])->field('id,type')->find();
$data = ['status'=>2];
$res = M()->save($data);
if($res)
{
M()->commit(); #提交事务
}else{
M()->rollback(); #回滚事务
}

4.采用的方法主要就是事务配合锁表,解决大并发写入问题

到此这篇关于thinkphp解决数据传入数据库中特殊字符的问题的文章就介绍到这了,更多相关thinkphp特殊字符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • yii2带搜索功能的下拉框实例详解

    yii2带搜索功能的下拉框实例详解

    带搜索功能下拉框在项目中经常会用到,下面小编把实现代码分享到脚本之家平台,供大家参考
    2016-05-05
  • thinkPHP利用ajax异步上传图片并显示、删除的示例

    thinkPHP利用ajax异步上传图片并显示、删除的示例

    这篇文章主要介绍了thinkPHP利用ajax异步上传图片并显示、删除的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Centos下升级php5.2到php5.4全记录(编译安装)

    Centos下升级php5.2到php5.4全记录(编译安装)

    这篇文章主要介绍了Centos下升级php5.2到php5.4全记录(编译安装),本文还同时讲解了解决htmlspecialchars默认编码UTF-8问题的解决方法,需要的朋友可以参考下
    2015-04-04
  • php实现base64图片上传方式实例代码

    php实现base64图片上传方式实例代码

    本篇文章主要介绍了php实现base64图片上传方式实例代码,这里整理了详细的代码,具有一定的参考价值,有需要的小伙伴可以参考下。
    2017-02-02
  • thinkPHP5.0框架API优化后的友好性分析

    thinkPHP5.0框架API优化后的友好性分析

    这篇文章主要介绍了thinkPHP5.0框架API优化后的友好性,结合具体实例分析了thinkPHP5.0框架进行API优化后在数据输出及错误调试方面的友好性改进,需要的朋友可以参考下
    2017-03-03
  • php如何计算两坐标点之间的距离

    php如何计算两坐标点之间的距离

    这篇文章主要为大家详细介绍了php如何计算两坐标点之间的距离,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • thinkPHP自动验证机制详解

    thinkPHP自动验证机制详解

    这篇文章主要介绍了thinkPHP自动验证机制,结合实例形式分析了thinkPHP自动验证机制的格式、原理与具体操作技巧,需要的朋友可以参考下
    2016-12-12
  • PHP转换Excel中日期和时间类型的处理问题

    PHP转换Excel中日期和时间类型的处理问题

    在实际应用中PHP读取的Excel文件的日期无法直接使用,会出现的一系列问题,本文给大家介绍PHP转换Excel中日期和时间类型的处理问题,感兴趣的朋友一起看看吧
    2023-10-10
  • 如何使用微信公众平台开发模式实现多客服

    如何使用微信公众平台开发模式实现多客服

    其实微信公众平台的多客服功能已经出来好久了,并且一出来的时候我就已经为自己的公众号实现了,原本以为大家都已经会了,但是今天还是有人问起这个多客服功能怎么使用,我找了下网上也没什么好的教程,今天我就给大家发一篇比较简单易懂的教程吧
    2016-01-01
  • Smarty使用自定义资源的方法

    Smarty使用自定义资源的方法

    这篇文章主要介绍了Smarty使用自定义资源的方法,实例分析了smarty自定义资源的定义与使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08

最新评论