проблема с установкой captcha

#
проблема с установкой captcha
Доброе время суток!
Возникла проблема с установкой каптчи на отдельную типовую динамическую страницу.
В общем есть форма в XSL-шаблоне, вот код:

<form class="order_form" action="{/cart/shop/path}cart/" name="address" method="POST">
<b>Форма заказа</b>
<span>
<a title="Условия доставки" href="#">
Условия доставки
</a>
</span>
<table>
<tr>
<td class="sp_left">
Как к Вам обращаться:
</td>
<td>
<input class="in" name="site_users_name" type="text" value="{site_users_name}" />
</td>
</tr>
<tr>
<td class="sp_left">По какому номеру Вам можно позвонить:</td>
<td><input class="in" name="site_users_phone" type="text" value="{site_users_phone}" /></td>
</tr>
<tr>
<td class="sp_left">Адрес электронной почты:</td>
<td><input class="in" name="site_users_email" type="text" value="{site_users_email}" /></td>
</tr>
<tr>
<td class="sp_left">Адрес доставки:</td>
<td><input class="in" name="site_users_address" type="text" value="{site_users_address}" /></td>
</tr>
<tr>
<td class="sp_left1">Дополнительная информация:</td>
<td><textarea rows="0" cols="0" name="site_users_fax" value="{site_users_fax}">
<xsl:value-of disable-output-escaping="yes" select="site_users_fax"/>
</textarea></td>
</tr>
                        
</table>
input name="step_1" type="submit" class="btn" title="Перейти к оформлению" value=" " />
<!-- <input name="step_1" value="Оформить заказ" type="submit" style="font-weight: bold"/> -->
<input name="step_1_1a" type="hidden" value="1"/>
</form>
                  
<!-- <p>
<input name="step_1" value="Оформить заказ" type="submit" style="font-weight: bold"/>
</p> -->
<!-- Добавляем скрытое поле с указанием подшага -->
<!-- <input name="step_1_1a" type="hidden" value="1"/> -->


Код типовой динамической страницы для этой формы выглядит так:
/* Если отключен модуль пользователей сайта, то вызывается этот подэтап */
      if (isset($_POST['step_1_1a']))
      {
         /* Сохраняем данные о пользователе в сессию */
         $external_propertys['site_users_name'] = $_SESSION['site_users_name'] = to_str($_POST['site_users_name']);
         $external_propertys['site_users_surname'] = $_SESSION['site_users_surname'] = to_str($_POST['site_users_surname']);
         $external_propertys['site_users_patronymic'] = $_SESSION['site_users_patronymic'] = to_str($_POST['site_users_patronymic']);
         $external_propertys['site_users_email'] = $_SESSION['site_users_email'] = to_str($_POST['site_users_email']);
         $external_propertys['site_users_phone'] = $_SESSION['site_users_phone'] = to_str($_POST['site_users_phone']);
         $external_propertys['site_users_fax'] = $_SESSION['site_users_fax'] = to_str($_POST['site_users_fax']);
         $external_propertys['site_users_address'] = $_SESSION['site_users_address'] = to_str($_POST['site_users_address']);
         $external_propertys['site_users_company'] = $_SESSION['site_users_company'] = to_str($_POST['site_users_company']);
      }
      else
      {
         $aInfoSiteUser = $SiteUsers->GetSiteUser($site_users_id);

         $external_propertys['site_users_name'] = $_SESSION['site_users_name'] = to_str($aInfoSiteUser['site_users_name']);
         $external_propertys['site_users_surname'] = $_SESSION['site_users_surname'] = to_str($aInfoSiteUser['site_users_surname']);
         $external_propertys['site_users_patronymic'] = $_SESSION['site_users_patronymic'] = to_str($aInfoSiteUser['site_users_patronymic']);
         $external_propertys['site_users_email'] = $_SESSION['site_users_email'] = to_str($aInfoSiteUser['site_users_email']);
         $external_propertys['site_users_phone'] = $_SESSION['site_users_phone'] = to_str($aInfoSiteUser['site_users_phone']);
         $external_propertys['site_users_fax'] = $_SESSION['site_users_fax'] = to_str($aInfoSiteUser['site_users_fax']);
         $external_propertys['site_users_address'] = $_SESSION['site_users_address'] = to_str($aInfoSiteUser['site_users_address']);
         $external_propertys['site_users_company'] = $_SESSION['site_users_company'] = to_str($aInfoSiteUser['site_users_company']);
         $external_propertys['site_users_postcode'] = $_SESSION['index'] = to_str($aInfoSiteUser['site_users_postcode']);
      }

      /* Запоминаем купон */
      $_SESSION['shop_coupon_text'] = to_str($_POST['shop_coupon_text']);


Вот. Надо вставить в эту форму стандартную капчу не через модуль "Формы".
Код генерации капчи:

<?php
require_once("captcha/captcha-config.php");
class geocaptcha{
function captcha(){
require(dirname(__FILE__).'captcha/captcha-config.php');
            $this->keystring='';
            for($i=0;$i<$length;$i++)
               $this->keystring.=$use_symbols{mt_rand(0,$use_symbols_len-1)};
         $im=imagecreatefromgif(dirname(__FILE__)."captcha/captcha_fonts/back.gif");
         $width = imagesx($im);
         $height = imagesy($im);
         $rc=mt_rand(120,140);
         $font_color = imagecolorresolve($im, $rc, $rc,$rc);
         $px =$margin_left;
            For($i=0;$i<$length;$i++){
                           imagettftext($im,$font_size,0,$px, $margin_top,$font_color,dirname(__FILE__)."captcha/captcha_fonts/CARTOON8.TTF",$this->keystring[$i]);
                              $px+=$font_width+mt_rand($rand_bsimb_min,$rand_bsimb_max);
                        }
      
      $h_y=mt_rand(0,$height);
      $h_y1=mt_rand(0,$height);
      imageline($im,mt_rand(0,20),$h_y,mt_rand($width-20,$width),$h_y1,$font_color);
      imageline($im,mt_rand(0,20),$h_y,mt_rand($width-20,$width),$h_y1,$font_color);
      $h_y=mt_rand(0,$height);
      $h_y1=mt_rand(0,$height);
      imageline($im,mt_rand(0,20),$h_y,mt_rand($width-20,$width),$h_y1,$font_color);
      imageline($im,mt_rand(0,20),$h_y,mt_rand($width-20,$width),$h_y1,$font_color);
      image_make_pomexi($im,50,80);
      
      $rand=mt_rand(0,1);
      if ($rand)$rand=-1; else $rand=1;
      wave_region($im,0,0,$width,$height,$rand*mt_rand($amplitude_min,$amplitude_max),mt_rand(30,40));
      header('Expires: Sat, 17 May 2008 05:00:00 GMT');
      header('Cache-Control: no-store, no-cache, must-revalidate');
      header('Cache-Control: post-check=0, pre-check=0', FALSE);
      header('Pragma: no-cache');
      if(function_exists("imagejpeg")){
         header("Content-Type: image/jpeg");
         imagejpeg($im, null, $jpeg_quality);
      }else if(function_exists("imagegif")){
         header("Content-Type: image/gif");
         imagegif($im);
      }else if(function_exists("imagepng")){
         header("Content-Type: image/x-png");
         imagepng($im);
      }
}
   function getKeyString(){
      return $this->keystring;
   }
}

function wave_region($img, $x, $y, $width, $height,$amplitude = 4.5,$period = 30){
        $mult = 2;
        $img2 = imagecreatetruecolor($width * $mult, $height * $mult);
        imagecopyresampled ($img2,$img,0,0,$x,$y,$width * $mult,$height * $mult,$width, $height);
        for ($i = 0;$i < ($width * $mult);$i += 2)
           imagecopy($img2,$img2,$x + $i - 2,$y + sin($i / $period) * $amplitude,$x + $i,$y, 2,($height * $mult));
        imagecopyresampled($img,$img2,$x,$y,0,0,$width, $height,$width * $mult,$height * $mult);
        imagedestroy($img2);
}

function image_make_pomexi(&$im,$size,$colch){
   $max_x=imagesx($im);
   $max_y=imagesy($im);
   for ($i=0;$i<=$colch;$i++){
   $size=mt_rand(10,$size);
            $px1=mt_rand(0,$max_x);
            $py1=mt_rand(0,$max_y);
            $col=imagecolorresolve($im, 255, 255, 255);
            $pk1=mt_rand(-1,1);
            $pk2=mt_rand(-1,1);
             imageline($im,$px1,$py1,$px1+$size*$pk1,$py1+$size*$pk2,$col);
         }   
}


?>



Форма и проверка капчи:

<?php
session_start(); ?>
<form action="" method="post">
<p>Введите текст с картинки:</p>
<p><img src="captcha/index.php?<?php echo session_name()?>=<?php echo session_id()?>">   

<p><input type="text" name="keystring"><input type="submit" value="Check"></p>
</form>
<?php
if(count($_POST)>0){
   if(isset($_SESSION['captcha_keystring']) && strtolower($_SESSION['captcha_keystring']) == strtolower($_POST['keystring'])){
      echo "Правильно";
   }else{
      echo "Ошибка - неправильный ввод числа";
   }
}
unset($_SESSION['captcha_keystring']);
?>


Еще есть вот такая штука в директории капчи:

<?php
error_reporting (E_ALL); // Установите в error_reporting (0);

/* Использование Using:
<?php session_start(); ?>
<form action="" method="post">
<p>Введите текст с картинки:</p>
<p><img src="captcha/index.php?<?php echo session_name()?>=<?php echo session_id()?>"></p>

<p><input type="text" name="keystring"><input type="submit" value="Check"></p>
</form>
<?php
if(count($_POST)>0){
   if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){
      echo "Правильно";
   }else{
      echo "Ошибка - неправильный ввод числа";
   }
}
unset($_SESSION['captcha_keystring']);
*/

include('captcha-gen.php');

if(isset($_REQUEST[session_name()])){
   session_start();
}

$captcha = new captcha();

if($_REQUEST[session_name()]){
   $_SESSION['captcha_keystring'] = $captcha->getKeyString();
}

?>



Пыталась вставлять код генерации типовую динамическую страницу и туда же проверку формы. Саму форму вставляла в код XSL-шаблона, но конечно же, тут же выдалось куча ошибок.

Подскажите пожалуйста куда вставлять все это? или есть возможность подключения стандартной капчи, то как это сделать?

Документацию читала-не помогло.
#
Re: проблема с установкой captcha
что неужели никто не сталкивался с подобной проблемой??
Может просто надо было подключить капчу в определенное место сайта..?
Модератор
#
Re: проблема с установкой captcha
Вставляете PHP-код в код динамической страницы, в XSL получается Вам нужно просто вставить <img> со ссылкой на картинку капчи, как на нее ссылаться уточняйте у разработчика скрипта.
#
Re: проблема с установкой captcha
код формы тоже в динамическую страницу вставляется?
Модератор
#
Re: проблема с установкой captcha
Код формы вставляете туда, где он нужен. Если через XSL, то адаптируете для XSL и вставляете. Чем только наша капча не угодила?
#
Re: проблема с установкой captcha
ДА дело то в том, что мне ее надо не через форму вставить, если бы вы мне написали как сделать стандартную капчу движка не через форму..просто в нужное место вставить, я была бы безумно рада!=)
#
Re: проблема с установкой captcha
документацию перечитала..нчиего не нашла по этому вопросу..
Модератор
#
Re: проблема с установкой captcha
См. руководство по интеграции, стр. 71 "Использование кода подтверждения для защиты
от автоматического заполнения форм (Captcha)"
#
Re: проблема с установкой captcha
Ага...и  в XSL вставляется опять же только одна ссылка на картинку?
Модератор
#
Re: проблема с установкой captcha
да, в руководстве об этом сказано.
Авторизация