2011-04-13 70 views
0

http://codeigniter.com/wiki/ReCAPTCHA/CodeIgniter 1.7 reCaptcha幫助

好的。所以我下載了代碼。將所有文件移到適當的文件夾中。在config/recaptcha.php文件中設置鍵。然後在那裏我的表單提交邏輯我放在

$this->form_validation->run() 

功能。

然後在HTML中我做了什麼?我需要顯示用戶輸入的驗證碼。我看到谷歌的代碼將php recaptcha添加到非代碼點火器文檔中,但我不確定哪些部分是相關的。我不知道我應該如何打電話給特定的文件。眼下

<? $this->load->view('recaptcha.php'); 
$publickey = "thekeynumbersandgibberish"; 
echo get_html($publickey); 
?> 

目前這打破我的HTML頁面,我想我沒有正確調用文件和功能使用代碼點火器的語法。什麼是正確的語法?這不包含在代碼點火器文檔中。

Insight將不勝感激。

+0

我沒有用在CI的驗證碼,但蛋糕使用它時,我只是用'$驗證碼\t = recaptcha_get_html($公鑰)加載的驗證碼HTML; '在控制器中,然後將其分配給視圖。沒有在視圖中加載任何文件 – JohnP 2011-04-13 18:26:44

+0

不幸的是,我並不真正瞭解所有需要的細節。你能詳細說明嗎?我究竟如何「分配一些視圖」 – CQM 2011-04-16 02:50:15

+0

我已經添加了一些更多的細節作爲答案。 – JohnP 2011-04-16 05:06:50

回答

0

你需要調用這個在您的控制器首先

//In your Controller 
$data['recaptcha'] = this->recaptcha->get_html(); 
$this->load->view('my_view',$data); //try it with the test page first 

//In your View 
$this->load->view('recaptcha.php'); 

在維基的說明是非常簡單的。不要在視圖中加載文件。在控制器中分配HTML。

這是使用MVC時的正常流程。

有一個基本的CI教程這裏:http://net.tutsplus.com/tutorials/php/codeigniter-basics/

+0

謝謝,這至今非常有幫助。我有一個文件contact.php在我的聯繫表單中,' load-> view('recaptcha.php');?>放在正確的位置,我可以看到代碼已經加載,當我做一個視圖源。它雖然沒有直觀顯示,但我還沒有完成控制器的部分工作,因爲我找不到控制器「this-> load - >」的聯繫人視圖。我實際上正在對這個文件結構進行逆向工程,試圖弄清楚這一點,我認爲一個CMS被用來創建這個網站,但我不知道哪個CMS /如何找到基於只有一個directry列表 – CQM 2011-04-16 19:53:44

+0

那麼,已經提到了Codeigniter。所以看看網址。通常,這些網址就像這樣'http:// sitename.com/controller/action/param'。這是標準,除非涉及到自定義路線。您可能需要與熟悉該項目的人交談才能找到答案。因爲如果您使用的是模板引擎,視圖調用將會不同 – JohnP 2011-04-17 04:52:36

+0

URL路徑看起來像「http:// sitename.com // folder/deeperfolder」首先是您認識的東西嗎?其次它是完全自定義的,是的,網站名稱後面有兩個斜線。那將被定義在哪裏?我得到的基本CodeIgniter MVC的東西,但這種額外的扭曲似乎沒有什麼直觀的目錄結構 – CQM 2011-04-18 15:48:02