分类目录归档:PHP程序设计

一客户反馈网站某一模块JS无法执行,远程查看加载的资源文件时,发现都返回的是,

function t3_ar_guard() {
eval(function(p,a,c,k,e,d){e=function(c){return c};if(!''.replace(/^/,String)){while(c--){d[c]=k[c]||c}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('0.3="4=7/6;5=/";0.2.1=0.2.1;',8,8,'document|href|location|cookie|ant_stream_55ed74d83cde3|path|1921785638|1445255474'.split('|'),0,{}))}

继续阅读浏览器加载资源返回 onload t3_ar_guard 问题

近期公司使用 精伦电子 iDR210、中国普天 CP IDMR02/TG、新中新 DKQ-A16D读卡器,对身份证读取。

于是便写了这个JS对身份证读卡器进行操作。

留意,在程序测试时,新中新的读卡器,貌似出问题了。奇怪的问题是,使用普天的驱动可以正常使用新中新的读卡器,而新中新的程序却不能识别自己的读卡器。

另外,普天读卡器,有时候拿不到身份证图片的 BASE64信息。建议禁用其他无关身份证读卡器加载项关闭IE重新打开,再试试。

另,已修复 IE8 console 报错问题。使用时,可以把 cardDebug 开关关闭。

继续阅读JS 调用身份证读卡器

Apache 性能优化几则

有点标题党了,称不上是性能优化,只能算是在日常工作遇到的某些问题及解决方案;目的旨在提升网站运行效率。
本文涉及Apache 日志处理、查看服务器运行状态、服务器信息、及访问控制(只是皮毛)。

如果你也遇到此类问题,我想本文会给你些参考,你可以从这些方面着手处理。

近日公司的网站首页打开超慢,在15秒左右,晕死,不知道怎么回事……没办法的事,只能硬着头皮来处理这事。(注:公司是网站、数据库分离的。)

继续阅读Apache 性能优化几则

(留意,本文引自fzzwakePHP文件缓存效率测试一文,并对测试代码做了修改。)

PHP文件缓存内容保存格式主要有三种:

  • 变量 var_export 格式化成PHP正常的赋值书写格式,用的时候直接include文件
  • 变量 serialize 序列化之后保存,用的时候反序列化
  • 变量 json_encode格式化之后保存,用的时候json_decode

一直以来,我都以为第一种效率最高,因为那是PHP脚本解释器解析PHP脚本的格式,原生的,应该最快,至少读取缓存的效率应该是最高的,可是今天做了个测试,令我大跌眼镜!原来 serialize序列化效率才是最高的,不论是读还是写!

继续阅读PHP文件缓存效率测试

介绍
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据 库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。但是它并不提供冗余(例如,复制其hashmap条目); 当某个服务器S停止运行或崩溃了,所有存放在S上的键/值对都将丢失。

继续阅读Windows PHP Memcached 配置

实际开发中,遇到一个问题,像下面的代码:

/* 获取明细列表 */
public function getMoneyList($whereArr, $offset=0, $perpage=10, $order='', $orderVal='') {
    $result = ARRAY();
    $this->CI->db->select('id,money,add_time,user_id,user_account,category_id,note,score_id,update_time');
    if (!empty($order) && !empty($orderVal) ) $this->CI->db->order_by($order, $orderVal);
    if (!empty($whereArr)) $this->CI->db->where($whereArr);
    if (!empty($perpage)) $this->CI->db->limit($perpage, $offset);
    $query = $this->CI->db->get('om_detail');
    if ($query->num_rows() == 0) return $result;

    foreach ($query->result_array() as $row)
        $result[$row['id']] = $row;

    return $result;
}

这是一个获取明细列表的方法,只要传递条件数组、偏移量、分页、及排序和值就可以将所需要的明细返回过来。

继续阅读CI数据库操作 如何写where 中的 where_in

使用CI开发WEB程序时,在模板目录下新添加了CSS和图片,程序中调用时,直接报403错误,以为是权限问题,更新了访问权限,还是不行。

有点小晕了,网上一查,是.htaccess文件问题,随后更改,very good,可以显示了。

插句P话,少了CSS的页面,真的真的难看。


CI 403 Forbidden

我还以为是文件夹或文件的权限问题,后来@曜日晨阳 说:看下.htaccess文件

继续阅读CI 2.1.x linux下访问css文件403 Forbidden问题