posts - 39,  comments - 19,  trackbacks - 0
先把登陆方面的放上来供大家参考,本人用Ext也不是很久,希望大家多多指点,代码写得不够精简,呵。
以下是Ext代码
Ext.onReady(function(){
    
        Ext.BLANK_IMAGE_URL
='../Libs/Js/resources/images/default/s.gif';
    
        setTimeout(
function(){
        Ext.get('loading').remove();
        Ext.get('loading
-mask').fadeOut({remove:true});
    }
250);
    
    Ext.QuickTips.init();
    Ext.form.Field.prototype.msgTarget
='side';

    
var lfm = new Ext.FormPanel({
        labelAlign:'left',
        labelWidth:
80,
        frame:
true,
        buttonAlign:'left',
        title: '润际科技CRM管理系统',
        bodyStyle:'padding:5px;',
        width:
400,
        items: [
{
            layout:'form',
            border:
false,
            labelSeparator:':',
            items:[
{
                xtype:'textfield',
                fieldLabel:'帐号',
                name: 'username',
                allowBlank:
false,
                anchor:'
70%'
                }
]
            }
,{
            layout:'form',
            border:
false,
            labelSeparator:':',
            items:[
{
                xtype:'textfield',
                fieldLabel:'密码',
                name: 'password',
                inputType:'password',
                anchor:'
70%',
                allowBlank:
false
                }
]
            }
,{
            layout:'column',
            border:
false,
            items:[
{
                layout:'form',
                columnWidth:.
8,
                border:
false,
                labelSeparator:':',
                items:[
{
                xtype:'textfield',
                fieldLabel:'验证码',
                name: 'code',
                anchor:'
88%',
                allowBlank:
false,
                maxLength:
4
                }
]
                }
,{
                layout:'form',
                columnWidth:.
2,
                border:
false,
                items:[
{
                xtype:'panel',
                hideLabel:
true,
                name: 'codepanel',
                html:'
<img src="?action=code" />'
                }
]
                }
]
            }
],
        buttons: [
{
            text:'登陆',
            name:'submit',
            style:'margin
-left:42px;',
            handler: 
function(){
            
if(lfm.form.isValid()){
            lfm.form.doAction('submit',
{
            url:'
?action=login',
            params:'',
            method:'post',
            waitTitle:'提示信息',
            waitMsg:'登陆系统中',
            success:
function(form,action){
            
if(action.result.data=='登陆成功'){
            window.location
='?action=main';
            }
else{
            Ext.Msg.alert('提示信息',action.result.data);
            }

            }
,
            failure:
function(){
            Ext.Msg.alert('提示信息','操作失败,请联系系统管理员!');
            }

            }
);
            }

        }

        }
]
    }
);

    lfm.render('inner');
}
);

以下是Fleaphp的Controller代码
<?php
/////////////////////////////////////////////////////////////////////////////
// 这个文件是 RangeCrm 项目的一部分
//
// Copyright (c) 2007 - 2008 www.erange.com.cn
//
// 要查看完整的版权信息和许可信息,请查看源代码中附带的 COPYRIGHT 文件,
// 或者访问 http://www.erange.com.cn/ 获得详细信息。

//
///////////////////////////////////////////////////////////////////////////

FLEA
::loadClass('Controller_Default');

/**
 * 用户资料控制类
 *
 * @package AUsers
 * @author 苏广贤 susam119@21cn.com
 * @version 0.1
 
*/
class Controller_AUsers extends Controller_Default {
    
    
/**
     * 数据对象
     *
     * @var Table_AUsers
     
*/
    
var $_tbAUsers;
    
    
/**
     * 操作对象
     *
     * @var Model_AUsers
     
*/
    
var $_mlAUsers;
    
    
/**
     * 数据对象
     *
     * @var Table_AProfile
     
*/
    
var $_tbAProfile;
    
    
/**
     * 构造函数
     *
     
*/
    
function __construct(){
        
$this->_tbAUsers=&FLEA::getSingleton('Table_AUsers');
        
$this->_mlAUsers=&FLEA::getSingleton('Model_AUsers');
        
$this->_tbAProfile=&FLEA::getSingleton('Table_AProfile');
    }
    
    
/**
     * 载入列表界面
     *
     
*/
    
function actionIndex(){
        
$rows=$this->pager($this->_tbAUsers,20,null,'users_id desc');
        
$smarty=$this->_getView();
        
$smarty->assign('js',APP_JS);
        
$smarty->assign('users',$rows);
        
$smarty->display('admin/users.tpl');
    }
    
}
?>
以下是Fleaphp的Model代码
<?php
/////////////////////////////////////////////////////////////////////////////
// 这个文件是 RangeCrm 项目的一部分
//
// Copyright (c) 2007 - 2008 www.erange.com.cn
//
// 要查看完整的版权信息和许可信息,请查看源代码中附带的 COPYRIGHT 文件,
// 或者访问 http://www.erange.com.cn/ 获得详细信息。

//
///////////////////////////////////////////////////////////////////////////

FLEA
::loadClass('Controller_Default');

/**
 * 用户资料操作类
 *
 * @package AUsers
 * @author 苏广贤 susam119@21cn.com
 * @version 0.1
 
*/
class Model_AUsers extends Controller_Default {
    
    
/**
     * 数据对象
     *
     * @var Table_AUsers
     
*/
    
var $_tbAUsers;
    
    
/**
     * 构造函数
     *
     
*/
    
function __construct(){
        
$this->_tbAUsers=&FLEA::getSingleton('Table_AUsers');
    }
    
    
/**
     * 登陆函数
     *
     
*/
    
function login(){
        
$rules=$this->_tbAUsers->meta;
        
$rules['USERNAME']['notEmpty']=true;
        
$rules['PASSWORD']['notEmpty']=true;
        
$verifier=&new FLEA_Helper_Verifier();
        
$result=$verifier->checkAll($_POST,$rules);
        FLEA
::loadClass('FLEA_Helper_ImgCode');
        
$imgcode=&new FLEA_Helper_ImgCode();
        
if(!$imgcode->check($_POST['code'])){
            
echo '{success:true,data:"验证码不正确"}';
            
exit();
        }
        
$user=$this->_tbAUsers->findByUsername($_POST['username']);
        
if (!$user){
            
echo '{success:true,data:"用户名错误"}';
            
exit();
        }
        
$pwd=$this->_tbAUsers->checkPassword($_POST['password'],$user[$this->_tbAUsers->passwordField]);
        
if (!$pwd){
            
echo '{success:true,data:"密码错误"}';
            
exit();
        }
        
$roles=$this->_tbAUsers->fetchRoles($user);
        
$rbac=&FLEA::getSingleton('FLEA_Com_RBAC');
        
$sessionUsers=array(
        
$user[$this->_tbAUsers->primaryKey],
        
$user[$this->_tbAUsers->usernameField]
        );
        
$rbac->setUser($sessionUsers,$roles);
        
echo '{success:true,data:"登陆成功"}';
    }
    
}
?>
以下是Fleaphp的Table代码
<?php
/////////////////////////////////////////////////////////////////////////////
// 这个文件是 RangeCrm 项目的一部分
//
// Copyright (c) 2007 - 2008 www.erange.com.cn
//
// 要查看完整的版权信息和许可信息,请查看源代码中附带的 COPYRIGHT 文件,
// 或者访问 http://www.erange.com.cn/ 获得详细信息。

//
///////////////////////////////////////////////////////////////////////////

FLEA
::loadClass('FLEA_Com_RBAC_UsersManager');

/**
 * 用户资料数据类
 *
 * @package AUsers
 * @author 苏广贤 susam119@21cn.com
 * @version 0.1
 
*/
class Table_AUsers extends FLEA_Com_RBAC_UsersManager {
    
    
/**
     * 数据表名
     *
     * @var users
     
*/
    
var $tableName='users';
    
    
/**
     * 数据表主键
     *
     * @var users_id
     
*/
    
var $primaryKey='users_id';
    
    
/**
     * 多对多关联
     *
     * @var array
     
*/
    
var $manyToMany=array(
    
'tableClass' => 'Table_ARoles',
    
'joinTable' => 'users_roles',
    
'foreignKey' => 'users_id',
    
'assocforeignKey' => 'roles_id',
    
'mappingName' => 'roles'
    );
    
    
/**
     * 一对一关联
     *
     * @var array
     
*/
    
var $hasOne=array(
    
'tableClass' => 'Table_AProfile',
    
'foreignKey' => 'users_id',    
    
'mappingName' => 'profile'
    );
}
?>
posted on 2007-12-15 22:27 阿门119 阅读(2925) 评论(2)  编辑 收藏 引用 网摘 所属分类: ExtFlEAPHP

只有注册用户登录后才能发表评论。
网站导航: