手机端一直有个问题,今天领导反复给我说ectouch无法qq登录了,跑回来一看,网站pc端用qq登录端是没问题的,但是mobile端就不行。
通过仔细研究,原来是qq互联对这个回调地址政策进行了调整,两个地方使用就必须要有两个回调地址!原来pc端那个回调地址为http://www.maiseed.com/user.php
后面加上ectouch的回调地址http://www.maiseed.com/mobile/index.php
,这样就两个地方都可以用了。
后来测试登录后发现,有错误提示,比如
Warning: Illegal string offset ‘page_number’ mobile/include/library/EcsTemplate.class.php(1009) : code on line 3
,
Warning: Illegal string offset ‘page_number’ mobile/data/cache/compiled/page.lbi : code on line 3
等错误提示。
研究了一下,当有订单的时候并不会出现这个提示,第一个感觉就是page_number为空了,而程序没有处理。
后来找到了对应位置,/mobile/themes/default/library/page.lbi
,加一个判断,当$pager
为true的时候再列出内容。
<ul class="pager ect-margin-lr ect-page"> <!-- {if $pager} --> <li class="pull-left"><a href="{$pager.page_prev|default:#}">上一页</a></li> <!-- {if $pager.page_number} --> <li class="form-select"> <i class="fa fa-sort-desc"></i> <select name="sel_question" onChange="window.location.href=this.value;"> <!-- {foreach from=$pager.page_number key=key item=num} --> <option value="{$num}" {if $pager.page == $key}selected{/if} >{$key}/{$pager.page_count}</option> <!-- {/foreach} --> </select> </li> <!-- {/if} --> <li class="pull-right"><a href="{$pager.page_next|default:#}">下一页</a></li> <!-- {/if} --> </ul>
这样就解决问题了。
转载请注明:百蔬君 » 【原创文章】修正ECTOUCH无法QQ登录及出现“Warning: Illegal string offset ‘page_number’ ”错误的解决方案