Archive for the '我的观点' Category

18
SELECT @id:=ho.hotel_id,hl.hotel_email
FROM order_info oi
JOIN hotel_order ho ON (ho.order_id=oi.order_id)
JOIN hotel_list hl ON (hl.hotel_id=@id)
WHERE oi.order_id=1
16

以下代码可以实现在一台电脑、一个ip下多个网站并存:

NameVirtualHost *:80

ServerName www.site1.cn
ServerAlias domain.tld *.domain.tld
DocumentRoot D:/www/site1


ServerName www.site2.cn
DocumentRoot D:/www/site2

注意第一行别落下!

09

http://www.cnblogs.com/MrYang/archive/2011/08/20/2147385.html

20

http://www.riadev.com/flex-thread-469-1-1.html

21

随着开发的不断深入,这两天在Yii框架下利用jQuery实现了AJAX。关键点有如下:

//listen to main element with ajaxlink style class name
    $(document).ready(function(){
        //after clicking a prediction intro
       $('.ajaxlink').click(function(){
           //ajax scan all dom element at the begining
           //and will not scan again even if class name is changed
           //so need to check the class name for sure
           if($(this).attr('class')=="ajaxlink"){
            targetID=$(this).attr('pid');
            $.ajax({
                type:"POST",
                url:'index.php?r=prediction/load',
                data:"id="+targetID,
                success:function(data){
                    $('#detail_'+targetID).html(data);
                }
            })
           }
        });
    });

核心是初始化文档时侦听带有特定样式名的元素,如果它(们)被点击,则激发js函数进行处理。这里是把id以post的形式发送到index.php?r=prediction/load,并将返回值放到id为#detail_x的元素中。实际开发过程中发现jQuery建立侦听后不能再添加侦听或者消除已建立的侦听,即使改变了样式名也不行。所以上面代码中加了一个对样式名的判断,虽然改变样式名不能消除侦听,但可以通过判断不执行相应操作。

16

在YII简单角色设定一文中介绍了如何设定user的角色。实际应用中往往还需要为user添加更多的变量。在userIdentity文件中可以这样写

if ($role >= 1) {
                $auth = Yii::app()->authManager;
                $auth->createRole('admin');
                $auth->assign('admin', $this);
                $this->setState('level', "admin");
            } else {
                $this->setState('level', "user");
            }

之后就可以这样应用level变量了

if(!Yii::app()->user->isGuest) echo(Yii::app()->user->level);
20

本地调好的webservice,传到服务器上后。直接用浏览器访问wsdl地址,提示“cannot modify header information”。这句话的意思是在用header方法定义网页header之前,已经有字符输出了。

刚开始按照网络上的解决方法,去修改php.ini来允许先输出别的字符后增加header(会影响性能),但并未解决我的问题。后来看到错误提示里提到”字符输出始于config/main.php:1″。难道main.php出问题了?

打开main.php,删除文档注释前的空行,问题解决了!看来先认真分析错误代码是非常重要的。

19

今天将开发中的YII项目文件上传到服务器测试,结果登录后一片空白。查看一个index页提示PDO错误。解决办法是在php.ini里打开:
extension=php_pdo_mysql.dll
extension=php_pdo_odbc.dll
extension=php_pdo_sqlite.dll

17

Local Share Object(LSO)是长期储存数据的简便方法,使用也很简单:

public var memberLSO:SharedObject;
 
private function init():void{
memberLSO= SharedObject.getLocal("trendEyeyMember", "/");
				if(memberLSO.data.username != null)
				{
					trace("Welcome back, you visited last on " + memberLSO.data.username);
				}
}
 
public function loginToServer(email:String, pw:String):void {
				webService.login(email,pw);
				memberLSO.data.username=email;
				memberLSO.data.password=pw;
			}
 
private function login_result(event:ResultEvent):void {
	memberLSO.flush();
}

更详细的介绍请看:http://blog.csdn.net/jinxinxin1314/archive/2009/11/03/4763495.aspx

14

如果一个数组中有元素的值相同,那么你可能想要去除重复的元素:

$result = array_unique($result);

注意,array_unique的处理方式是删除重复的元素,但并不改变剩下元素的指针,所以遍历时不能再以指针递增或递减的方式来进行,而应该用foreach:

foreach ($result as $i) {
    echo($i);
}