Codeigniter注冊登錄代碼示例
本示例Codeigniter注冊登錄代碼源自一個(gè)codeigniter的項(xiàng)目,現(xiàn)分享下~
由于使用了 Active Record 類,一般數(shù)據(jù)庫操作只有兩層,即是C和V
controllers/login.php文件:
class Login extends CI_Controller {
private $pass = '';
public function __construct() {
parent::__construct ();
$this->load->helper ( array (
'form',
'url'
) );
$this->load->library('session');
}
public function index() {
$this->load->view ( 'login' );
}
public function formsubmit() {
$this->load->library ( 'form_validation' );
$this->form_validation->set_rules ( 'username', 'Username', 'required' );
$this->form_validation->set_rules ( 'password', 'Password', 'required' );
if ($this->form_validation->run () == FALSE) {
$this->load->view ( 'login' );
} else {
if (isset ( $_POST ['submit'] ) && ! empty ( $_POST ['submit'] )) {
$data = array (
'user' => $_POST ['username'],
'pass' => md5($_POST ['password'])
);
$newdata = array(
'username' => $data ['user'] ,
'userip' => $_SERVER['REMOTE_ADDR'],
'luptime' =>time()
);
if ($_POST ['submit'] == 'login') {
$query = $this->db->get_where ( 'uc_user', array (
'user' => $data ['user']
), 1, 0 );
foreach ( $query->result () as $row ) {
$pass = $row->pass;
}
if ($pass == $data ['pass']) {
$this->session->set_userdata($newdata);
$this->load->view ( 'usercenter', $data );
}
} else if ($_POST ['submit'] == 'register') {
$this->session->set_userdata($newdata);
$this->db->insert ( 'uc_user', $data );
$this->load->view ( 'usercenter', $data );
} else {
$this->session->sess_destroy();
$this->load->view ( 'login' );
}
}
}
}
}
views/login.php文件:
<?php echo validation_errors(); ?>
<?php echo form_open('login/formsubmit'); ?>
<table>
<tr>
<td>用戶名</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>密碼</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td>
<input type="submit" name="submit" value="login">
</td>
<td>
<input type="submit" name="submit" value="register">
</td>
</tr>
</table>
</form>
</html>
sql語句:
uc_user:
`id` int(11) unsigned zerofill NOT NULL AUTO_INCREMENT,
`user` varchar(20) NOT NULL,
`pass` char(32) NOT NULL,
`role` enum('root','normal') NOT NULL DEFAULT 'root',
`del` decimal(1,0) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1
- php實(shí)現(xiàn)仿寫CodeIgniter的購物車類
- Codeigniter購物車類不能添加中文的解決方法
- 基于Codeigniter框架實(shí)現(xiàn)的student信息系統(tǒng)站點(diǎn)動態(tài)發(fā)布功能詳解
- CodeIgniter采用config控制的多語言實(shí)現(xiàn)根據(jù)瀏覽器語言自動轉(zhuǎn)換功能
- CI(CodeIgniter)框架中的增刪改查操作
- CodeIgniter啟用緩存和清除緩存的方法
- Codeigniter(CI)框架分頁函數(shù)及相關(guān)知識
- CodeIgniter輔助函數(shù)helper詳解
- Codeigniter實(shí)現(xiàn)處理用戶登錄驗(yàn)證后的URL跳轉(zhuǎn)
- 基于CI(CodeIgniter)框架實(shí)現(xiàn)購物車功能的方法
相關(guān)文章
命令行執(zhí)行php腳本中的$argv和$argc配置方法
這篇文章主要介紹了命令行執(zhí)行php腳本 中$argv和$argc的方法,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2018-01-01PHP兩個(gè)n位的二進(jìn)制整數(shù)相加問題的解決
這篇文章主要為大家詳細(xì)介紹了PHP兩個(gè)n位的二進(jìn)制整數(shù)相加問題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08Laravel5.7框架安裝與使用學(xué)習(xí)筆記圖文詳解
這篇文章主要介紹了Laravel5.7框架安裝與使用學(xué)習(xí)筆記,結(jié)合圖文形式詳細(xì)講解了Laravel5.7框架的安裝、配置、組件、路由等基礎(chǔ)與操作技巧,需要的朋友可以參考下2019-04-04Laravel生命周期啟動(從創(chuàng)建應(yīng)用實(shí)例到注冊基礎(chǔ)服務(wù))過程解析
這篇文章主要介紹了Laravel生命周期啟動過程解析,從創(chuàng)建應(yīng)用實(shí)例到注冊基礎(chǔ)服務(wù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10win7 wamp 64位 php環(huán)境開啟curl服務(wù)遇到的問題及解決方法
這篇文章主要介紹了PHP簡單開啟curl的方法,較為詳細(xì)的講述了PHP開啟curl函數(shù)庫的具體步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2018-09-09