J9国际集团|Home

135-2716-3909
网站建设资讯详细

网站开发□□□中使用ThinkPHP框架分页✦时候参数♦带中文,为何会查□□□□询不到数□□据?

发表日期:2026-07-13 11:19:11   作者来源:徐家辉   浏览:3637   标签:网站开发    
在开发的□□□时候有一□□些网站需□□□要做一个□□整站的搜□□□索功能,当然这个□□□□的搜索只□□□□包含一部□□□□分的内容□□搜索,比如:新闻,产品,解决方案□□□等几个主□□□□要模块的□□内容搜索
这个搜索□□□□功能一般□□□□是放在网□□□□站的导航•或者底部,让浏览网▼站的用户▼可以清楚□□□□的看到,并且知道□□□□这个功能▽可以,在输入关□□□键字的情□□□□况下,可以快速□□□的搜索到□□□一些自己□□□想要了解□□□的产品,新闻等内□□容。

搜索截图

在搜索的□□□时候输入□□□中文搜索,接收到的□□□参数是乱●码,查询数据◎库的时候▼查询不到□□□任何信息,首先反应□□□□的是不是Form 使用get提交的时□□候有问题,换成post提交试一
下,发现还是一样的结果,这是前端提交代码:
<form action="{:urlrotue('***/index')}" method="get">
<div class="row por">
    <input type="submit" value="" class="submit0">
    <input type="text" placeholder="请输入搜索内容" class="search-input" name="keywords">
    <span class="search-close"></span>
</div>
</form>
面对这样□□的结果是□□□□一脸懵,大脑里想□□□□的是这是□□□□什么情况?一脸的问□□□号?为什么以丨前做的项◥目没有遇▽到这样的◆问题,新项目也□□□□是使用一○样的框架○和方法,怎么这次◉就遇
到这样的□□□□问题。我在遇到□□□□这个问题☆的时候想◎着自己能◆解决,就没有问□□同事,就去度娘□□□□一顿搜索,终于找到▼了问题所□□□□在,说是浏览□□□器的默认□□编码在作◥怪,需要在PHP页面添加
header("Content-Type:text/html;charset=UTF-8");这个就没□□□□有问题了,结果问题□□□还真的解□□□□决了,能搜索出□□来对应关□□键字的信□□息,试了试翻□□页也没有□□□□问题,然后就
是把项目□□□□上传服务□□□器进行进□□一步测试。结果就是□□又出现了□□□新的问题,本地测试□□□的时候一□□□□切正常,但是上传•到服务器□□的时候,这个搜索□□就出现一丨些原因不·明的问题,在输入关□□键字查询•的时候一□□切都是正□□□□常的,但是当你◉搜索到的□□□□内容比较◎多的时候,你想查看□□□□第二页的□□□□搜索结果□□□的时候,你会发现◢翻页到第▽二页的时□□□□候,页面是没□□□有显示任□□□□何数据的。这到底是□□□什么问题□□□呢?下图是第□□□□一次搜索□□□□时显示正✦常数据的□□□图片和翻□□□□页时候显◤示无数据□□□□的情况图□□片:
 

网站截图



在遇到这□□□□种情况的●时候我想♦大家的第□□□□一反应肯□□□定跟我一●样,是不是上□□传服务器◥的时候有□□□什么东西□□没保存就□□□□上传上去丨了,然后去本○地把文件□□□一个个的▼检查一遍,然后确
认没问题▼再上传一□□□遍,但是结果□□□□还是一样◇的,翻页的时□□候还是没□□有查询到□□□□任何数据。
然后就是□□□各种排查,看看是不□□□□是分页的♦时候传的□□□参数名是□□□不是跟第△一次的时□□候不一样,是不是a链接传参□□□的时候漏□□□□掉了关键□□□字,结果当然□□□都不是这□□些的问题,下图是A链接的跳□□□□转链接图□□片:
 

分页截图

发现也不□□是这个问□□题,然后就是◤继续问度▽娘找问题◈原因,不知道是□□□□不是我搜▲索的问题□□□一直没有□□□问到关键□□□□点,所以一直△没有找到□□□对的方法,实在是没□□□□办法了就◇问了一下□□同事,同事说的◎是因为参□□数带中文□□出现了乱□□码的原因,乱码?;乱码我不□□是已经处□□□理了吗?怎么又有□□□□问题。很是不解,无奈叫同□□□□事把他处□□□□理过的ThinkPHP框架的分□□□□页类发我□□□□一份,我替换看□□□□一下有没○有问题
下图:

程序文件目录

结果还是◢一样的问◣题,然后只能□□□□继续问度□□娘,这次有了□□提示搜索□□□□的问题是“ThinkPHP分页有中□□文参数出□□□□现乱码”这个关键□□字,这次终于□□□□找到了问□□题,需要修改□□一下内置□□□□分页类的Page.class.php的内容,然后就是□□□□按操作把◉对应的内□□□□容给修改□□□替换,上传服务□□器测试,这次没问○题了显示□□正常,翻页也是□□□□正常的,下面是测✦试结果:
 
这个是需要替换前的内容:

代码

这是替换后的:

代码2

问题到这□□□□里就已经□□□□解决了,但是也让□□我学到了□□□很多,很多问题□□□只要找到□□对应的关□□键点就能□□□□很快解决,在一个人□□走进死胡□□□同的时候□□□□可以问一□□□□下身边的✦人,他们能给□□□□你提供一□□个全新的◆方向,这样也能□□让你快速□□□的找到问◣题的所在。在这里提□□□醒一下,各位遇到□□□问题不应□□□□一味的自☆己研究,其实可以◈问一下你□□的同事或□□□□者前辈,毕竟你没□□遇到的问★题,别人可能△遇到过,这样还有□□□助同事之✦间的交流,增加友谊。
如没特殊注明,文章均为J9国际集团原创,转载请注明来自https://www.nzweibaum.com/news/6035.html