Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проблема с AJAX
Форумы портала PHP.SU » » HTTP и PHP » Проблема с AJAX

Страниц (1): [1]
 

1. rsd - 12 Октября, 2011 - 11:14:57 - перейти к сообщению
Привет!
Пишу форму регистрации на сайте в двух вариантах: обычном и аякс.
Так вот
когда я в файле регистрации подключаю рекапчу
PHP:
скопировать код в буфер обмена
  1. $publickey = $system['publickey'];
  2. $privatekey = $system['privatekey'];
  3.  
  4. $captcha = "<script>
  5. var RecaptchaOptions = {
  6.    lang  : 'ru',
  7.    theme : '".$system['re_theme']."'
  8. };
  9. </script>
  10. ";
  11.  
  12. $captcha .= recaptcha_get_html($publickey);
  13.  
  14. $tpl->get_tpl(TPL.'registration.tpl');
  15. $tpl->set_tpl('{captcha}',$captcha);
  16. $tpl->tpl_parse();
  17. $reg = $tpl->template;

то все отлично работает

а при аякс запросе (делаю то тоже самое)
PHP:
скопировать код в буфер обмена
  1. /***** Регистрация *****/
  2. if(isset($_GET['regform']) and $_GET['regform'] == 'do') {
  3.    
  4. $publickey = $system['publickey'];
  5. $privatekey = $system['privatekey'];
  6.  
  7. $captcha =<<<HTML
  8. <script>
  9. var RecaptchaOptions = {
  10.     lang  : 'ru',
  11.     theme : '{$system['re_theme']}'
  12. };
  13. </script>
  14. HTML;
  15.  
  16. $captcha .= recaptcha_get_html($publickey);
  17.    
  18. $tpl->get_tpl(TPL.'registration.tpl');
  19. $tpl->set_tpl('{captcha}',$captcha);
  20. $tpl->tpl_parse();
  21. $reg = $tpl->template;
  22.  
  23. $reg = preg_replace("#\\[page_register\\](.*?)\\[/page_register\\]#ies", "", $reg);
  24. $reg = str_replace("[ajax_register]", "", $reg);
  25. $reg = str_replace("[/ajax_register]", "", $reg);
  26. $reg_form = $reg;
  27.  
  28. echo $reg_form;
  29.    
  30. } // END GET reg form


то капча не выводится на сайте, точнее не выводится только тот код который начинается с тегов <script>
(рекапча сама по себе состоит из двух кодов Script и noscript (если вдруг у юзера откл. яваскрипт))
и код заключенный в <noscript> выводится. Таким образом фильтруется только код с тегом <script>.

Почему так? и как можно решить эту проблему?

 

Powered by ExBB FM 1.0 RC1