我是一個完全的PHP初學者。我實際上想爲我的需求定製一個視覺刺激調查平臺,因爲我需要這個調查平臺來進行論文研究。這個調查平臺的原始版本要求參與者的郵件地址登錄,然後他們看到可用的測試。據我瞭解,代碼檢查郵件地址是否已經保存在數據庫中,並且如果沒有爲各個參與者(使用他們的郵件地址作爲標識符)保留一定數量的刺激。然後這個刺激的數量將被阻止進一步的測試。然而,這帶來一些問題:PHP表單驗證 - pseudopassword而不是郵件地址和隨機數作爲唯一標識符而不是郵件地址
1)參加者可只參加一次 2)參與者必須放棄他們的匿名
整個事情並不一定要很複雜。如果參與者可以使用「匿名」一詞登錄,然後進行可用的測試,而不是通過他們的郵件地址保留一定數量的刺激,而是通過作爲標識符的自動生成的唯一隨機數來進行測試就足夠了。
我想代碼的重要線路如下:
/**
* Lets user login. Stores new e-mail addresses if not yet in database.
*/
function login() {
$this->validation->set_error_delimiters('<div class="error">', '</div>');
$this->validation->set_message('required', $this->lang->line("validation_error_validemail_required"));
$this->validation->set_message('valid_email', $this->lang->line("validation_error_validemail_required"));
// check if valid e-mail address
//required|valid_email
$rules['email'] = "required|valid_email";
$this->validation->set_rules($rules);
$fields['email'] = $this->lang->line("frontend_user_email");
$this->validation->set_fields($fields);
if ($this->validation->run() == FALSE) {
$this->load->view('welcome_message'); // reload form
} else {
$this->load->model("testcontainer_model", 'testcontainer');
$this->data['testcontainer']->activeuser = $this->data['testcontainer']->getUserByEmail($_POST['email']);
$this->load->view('welcome_message', $this->data);
}
}
/**
* Logout user, unset session data.
*/
function logout() {
$this->session->unset_userdata('user_email');
$this->session->unset_userdata('user_id');
$this->session->unset_userdata('albumpath_relative');
$this->session->unset_userdata('test_name');
$this->session->unset_userdata('test_id');
$this->load->view('welcome_message');
}
請你多好啊,幫我修改這個代碼來得到我想要的想要的嗎?我很感激每一個幫助!
最好的問候,
安德烈亞斯
你看過文檔嗎?有很多關於表單驗證的信息 – bottleboot 2012-03-20 15:17:58
這正是我的問題 - 我完全被這個主題的大量信息所淹沒。問題是我需要這個爲我的論文和PHP是絕對不是我的話題。所以我在這裏問了這個問題,希望有人能給我一個提示...... – chameau13 2012-03-20 15:25:30