�ܻؤ�1�顪30�奵��꡼�ޥ�ܥ���������

����IT��Ȥ�Ư��30�奵��꡼�ޥ�Υ��饤�ߥ󥰵�Ͽ

2010ǯ07��

20100630211430 �褯���ꤽ���ʤ���ʤ��󤸤Υ���������̡�
���󤿤��������ܥ���ȡ�ID/PASS���Ϥ���ե����ࡣ

���󤿤��������Ϥ�����������ޤ����ɡ��Ȥꤢ��������Ͽ���ޤ���
����ꥢ�Υ����ȥ�������IP���¤Ϥ��ޤ��礦�äƤ��󤸡�


ɸ���Auth����ݡ��ͥ�Ȥȡ�ktai�饤�֥����ȤäƤޤ���

UID�����ꤷ�Ƥ���С֤��󤿤��������פǤ��ơ����Ƥʤ����ID/PASS���Ϥ���UID���ꤹ�뤳�Ȥ�Ǥ���Ȥ�����ǽ��
����ϥȥåץڡ����ǹԤ�����Ǥ���
Cake�ΥС�������1.3

APP/controllers/top_controller.php

class TopController extends AppController
{
  var $name = 'Top';
  var $uses = 'User';
  var $helpers = array('Ktai','Session','Form');
  var $components = array('Ktai','Session','Auth');

  function beforeFilter() {
    $this->Auth->loginAction = '/';
    $this->Auth->autoRedirect = false;
    $this->Auth->authorize = 'controller';
    $this->Auth->allow('index');
    parent::beforeFilter();
  }

  function beforeRender() {
    parent::beforeRender();
  }

  function index () {
    if ($user = $this->Auth->user()) {
      if (isset($this->data['add_uid'])) {
        $user['User']['uid'] = $this->Ktai->get_uid();
        $this->User->save($user['User']);
/* 7/14�ɵ� */
        $user = $this->User->findById($set['id']);
        $this->Auth->login($user);
/* 7/14�ɵ������ޤ� */
      }
      $this->redirect($this->Auth->redirect());
    } else {
      if (isset($this->data['auto_login'])) {
        if ($user = $this->User->findByUid($this->Ktai->get_uid())) {
          if ($this->Auth->login($user['User'])) {
            $this->redirect($this->Auth->redirect());
          } else {
            $this->Session->setFlash('���٤��󤿤������������򤷤Ƥ�������',null);
          }
        } else {
          $this->Session->setFlash('���󤿤�����������꤬����Ƥ��ޤ���',null);
        }
      }
    }
  }

  function isAuthorized () {
    $user = $this->Auth->user();
    $user['User']['last_login'] = date('Y-m-d H:i:s');
    $this->User->save($user['User']);

    return true;
  }
}

��äƤ��뤳�Ȥϰʲ���3����
��ID/PASS�ǥ��������������ơ��֤��󤿤�����������ꤹ��פ˥����å�������Ƥ���С�UID��Ȥäƥơ��֥���ͤù��ࡣ
�����󤿤��������ξ���UID�򥭡���users�ơ��֥뤫��ǡ������äƤ���Auth->login���ͤù���ǥ������󤵤��롣
��isAuthorized()�ǥ�����������������������������򹹿���

users�ơ��֥�

+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| id          | int(10)      | NO   | PRI | NULL    | auto_increment |
| username    | varchar(100) | NO   |     | NULL    |                |
| password    | varchar(100) | NO   |     | NULL    |                |
| uid         | varchar(100) | NO   |     | NULL    |                |
| flag        | int(1)       | NO   |     | NULL    |                |
| last_login  | datetime     | NO   |     | NULL    |                |
| created     | datetime     | NO   |     | NULL    |                |
| updated     | datetime     | NO   |     | NULL    |                |
+-------------+--------------+------+-----+---------+----------------+


�������å������Ȥ��ʤ����Ӥ��ޤ��ޤ��������󤢤뤿��ʼ��docomo�ˡ����Τ���������˺��ʤ��褦�˥�⡣

APP/config/bootstrap.php

if (!isset($_SESSION)) {
  if ($ini_set) {
    ini_set('session.use_trans_sid', 1);
    ini_set('session.serialize_handler', 'php');
    ini_set('session.use_cookies', 0);
  }
}


2010/07/14�ɵ�
��������κݤ�UID��ơ��֥���ɲä�����硢
$this->Auth->user()�Ǽ���桼���ǡ����ϥ��å����ʤΤǺ��٥������󤷤ʤ��Ȥ����ʤ��ߤ�����
    ¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲÃ

�ơ��֥�Υ����Υ����פ�tinyint(1)�ˤ��ơ�save���褦�Ȥ�����������ͤ�����������

  $set = array('type' => 2);
  $this->Data->create();
  $this->Data->save($set);

type��2������褦�Ȥ��Ƥ������ɡ��ǡ����١������Ƥߤ��1�ˤʤäƤ롪��
�����ä��餤�äѤ��ǤƤ����Τǡ��ߤ�ʤ�äѤ�ϥޤ����͡���
���ʤߤ�CakePHP1.3�Ǥ���

Cakephp��tinyint��boolean�ˤ����餷���������ʤ�Ƥ��ä���

CORE/libs/model/datasources/dbo/dbo_mysql.php line474
    if (($col == 'tinyint' && $limit == 1) || $col == 'boolean') {
      return 'boolean';
    }

����ϼº��θ����Ƥߤʤ��ȵ��Ť��ʤ��͡���
̵�̤˻��֤Ȥ�줿��
    ¤³¤Î¥¨¥ó¥È¥ê¡¼¤ò¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲÃ

¤³¤Î¥Ú¡¼¥¸¤Î¥È¥Ã¥×¥Ø

'); label.html('\ �饤�֥ɥ��֥����ǤϹ���Υѡ����ʥ饤�������¬��Τ��᥯�å���(cookie)����Ѥ��Ƥ��ޤ���
\ ���ΥХʡ����Ĥ��뤫�������³���뤳�Ȥǥ��å����λ��Ѥ�ǧ������������ΤȤ����Ƥ��������ޤ���
\ �ޤ��������ͤ����ҥѡ��ȥʡ���Ȥˤ��������μ�³���ˤ�ꡢ���å����λ��Ѥ�������뤳�Ȥ�Ǥ��ޤ���
\ �ܺ٤��饤�֥ɥ����ѵ���򤴳�ǧ����������\ '); banner.append(label); var closeButton = $('