Оповещения не отображаются в капче - PullRequest
0 голосов
/ 08 февраля 2012

У меня проблема с показом оповещения по капче.Когда я ввожу код с кодом Caporcha Incorrcet на странице регистрации, оповещения не работают.

Код моей капчи:

<tr>
<td>

  <img src="captcha/captcha_code_file.php?rand=<?php  echo rand(); ?>" id='captchaimg'  style="border:1px solid #CCC;">
  <a href='javascript: refreshCaptcha();'><img src="template/images/refresh.png"/></a>
  <br/><br/>

  <input id="6_letters_code" name="6_letters_code" type="text" style="width:200px;margin-top:-15px;" tabindex="7">
  <br />
  </td>
  </tr>

Код предупреждения об ошибке:

<?php
if( isset ($_REQUEST['register']) ) {

    if( empty($_SESSION['6_letters_code'] ) || strcasecmp($_SESSION['6_letters_code'], $_POST['6_letters_code']) != 0)
        {
            echo $msg .= '<script type="text/javascript">alert("Please Enter the code correctly !!")</script>';
        }
}?>

гдеЯ должен использовать этот код оповещения ??после кода с картинки или конца моего кода ??

1 Ответ

0 голосов
/ 08 февраля 2012

Похоже, что ваш сеанс IF и секция strcasecmp были немного испорчены. Это должно работать до тех пор, пока $ _REQUEST ['register'] и $ msg делают то, что я думаю, вы хотите, чтобы они делали.

<?php

if(isset($_REQUEST['register'])) {

    if( 
        (empty($_SESSION['6_letters_code']))
        ||
        (strcasecmp($_SESSION['6_letters_code'], $_POST['6_letters_code']) != 0)
    )
    {
        echo $msg .= '<script type="text/javascript">alert("Please Enter the code correctly !!")</script>';
    }

}

?>

Что касается оповещения, возможно, вам нужно использовать автоматически отображаемое оповещение JS, подобное этому (вместо использования строки "echo $ msg. =" ...

echo '<body onLoad="javascript:alert(\'Please enter the code correctly!\')">';
...