2013-08-26 71 views
0

我有2頁。在同一頁面上顯示「captchacha」錯誤消息

1具有帖子值到第2頁

頁2具有以下形式:

if (!$resp->is_valid) { 

    // What happens when the CAPTCHA was entered incorrectly 
    die ("The reCAPTCHA wasn't entered correctly. Go back and try it again. " . 
     "(reCAPTCHA said: " . $resp->error . ")"); 

} else { 

相反顯示的die輸出第2頁上,如何顯示該值或一個的在recaptcha控制下的第1頁更適當的價值?

回答

1

您可以製作第1頁if (isset($_POST['submit')){...}區塊。在此區塊中,您檢查了錯誤消息recaptcha和echo ""

+0

我有這個

」>> if(isset($ _ POST ['submit'])){。 ... {。$ action =「contactengine.php」;} .....}我喜歡將我的動作變成動態..有些事情沒有奏效。有沒有這樣的方式來寫形式的動態行動?..謝謝。 – Spidey

0

您應該將請求發佈到page1並在其中添加recaptcha代碼。然後,如果出現錯誤而不是調用die(...);,則可以設置一個名爲$error的變量。然後,在驗證表格之後,您可以檢查是否設置了$error,然後顯示錯誤消息。這看起來像下面的snipet:

if(isset($error)) { 
    echo '<p class="error">' . $error . '</p>'; 
} 

我希望這可以幫助。

0

您可以提交表單頁面1,檢查驗證碼是正確的有:

  • 如果它不正確,則可以顯示消息附近的形式本身某處,
  • 如果它是正確的,你可以設置的Cookie /設置一些會話變量和重定向到第2頁,

其他的辦法是,第2頁,而不是重定向die回第1頁,如果驗證碼不正確的(你可以設置一些會話變量以及在pa上顯示錯誤GE 1重定向後)

0

即使在一個腳本中獲取錯誤狀態,但想要使用其他值。它有下一個決心: 1)使用$ _SESSION數組來保存腳本2驗證狀態 :

if (!$resp->is_valid) { 

    // What happens when the CAPTCHA was entered incorrectly 
    $_SESSION['error_status'] = $resp->error; 

} else { 

腳本1:

if ($_SESSION['error_status']){ 
    echo "<p class='error'>{$_SESSION['error_status']}</p>" 
} 

2),或者你可以在頭添加ERROR_STATUS(」位置:http://you_site.com/?error_status='。$ error_code);第二個腳本中的

相關問題