Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: проверка капчи
 
 автор: antosha23   (31.01.2011 в 16:02)   письмо автору
15.6 Кб
 
 

помогите пожалуйста проверить правильность введенных символов в капаче.

вот код

<?php include("blocs/bd.php");
if(isset(
$_POST['id'])){$id $_POST['id'];}

// Запрет на кэширование
header("Expires: Mon, 23 May 1995 02:00:00 GTM");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GTM");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
//****

$log =="";
$error="no"//флаг наличия ошибки

require_once 'JsHttpRequest.php';
$JsHttpRequest =& new JsHttpRequest("windows-1251");

//Короткие имена переменных и обрезка пробелов img_title
$comtext trim($_POST['comtext']);
$email trim($_POST['email']);
$name trim($_POST['name']);
$code trim($_POST['code']);
session_start();
if (!empty(
$_REQUEST['captcha'])) 
{
    if (empty(
$_SESSION['captcha']) || trim(strtolower($_REQUEST['captcha'])) != $_SESSION['captcha']) 
    {
        
$note'Please enter valid text';
    } 
    else 
    {
    if(
$_SERVER["REQUEST_METHOD"] == "POST")
{

$name=htmlentities($_POST['name']); 
$message=htmlentities($_POST['message']);
$email=htmlentities($_POST['email']);
$code=htmlentities($_POST['code']);

// Insert SQL Statement 
$note'Values Inserted';
}
 
    }

  
    unset(
$_SESSION['captcha']);
    }


//Проверка email адреса

function isEmail($email)
            {
                return(
preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
                        
,$email));
            } 
         
if(
$email == '')
                {
   
$log .= "<div>Пожалуйста, введите Ваш email!</div>";
   
$error "yes";
                  
                }         

else if(!
isEmail($email))
                {
                   
   
$log .= "<div>Вы ввели неправильный e-mail. Пожалуйста, исправьте его!</div>";
   
$error "yes";
                }
//Проверка наличия введенного текста комментария
//****


//Проверка наличия введенного текста комментария
if (empty($comtext))
{
   
$log .= "<div>Необходимо указать текст сообщения!</div>";
   
$error "yes";
}
//****


//Проверка длины текста комментария
if(strlen($comtext)>500)
{
   
$log .= "<div>Слишком длинный текст, в вашем распоряжении 500 символов!</div>";
   
$error "yes";
}
//****   
    
//Проверка на наличие длинных слов
$mas preg_split("/[\s]+/",$comtext);
foreach(
$mas as $index => $val)
{
  if (
strlen($val)>60)
  {
   
$log .= "<div>Слишком длинные слова (более 60 символов) в тексте записи!</div>";
   
$error "yes";
   break;
  }
}
//****
   
//Должнен быть хоть один символ на русском языке
$spam=1;  

for(
$i=0;$i<strlen($comtext);$i++)
{
   if((
ord($comtext[$i])>=192) && (ord($comtext[$i])<=255)){$spam=0;break;}
}

if (
$spam == 1)
{
   
$log .= "<div>В комментарии нет ни одной русской буквы. Не принимается!</div>";
   
$error "yes";    

//**** 
//Экранирование и преобразование опасных символов
if (!get_magic_quotes_gpc())
{
$comtext addslashes($comtext);
$email addslashes($email);
$img addslashes($img);
}

$comtext htmlspecialchars($comtext);
$email htmlspecialchars($email);
$img htmlspecialchars($img);
//****


//Если нет ошибок отправляем email  
if($error=="no")
{

$date date("Y-m-d");
$result2 mysql_query ("INSERT INTO comments (post,author,comtext,date) VALUES ('$id','$name','$comtext','$date')",$db);
$prov 0;

   
//Отправка письма админу о новом комментарии
$emailadmin 'antosha2027@gmail.com';//e-mail админа
$result3 mysql_query ("SELECT title FROM lessons WHERE id='$id'",$db);
$myrow3 mysql_fetch_array ($result3);
$post_title $myrow3["title"];
$sub=$post_title;
$mes "Появился новый комментарий к уроку!\n".$post_title."\n\nкоментарий добавил: ".$name."\n ".$comtext."\n\nСсылка на страничку: http://anton-blogdesign.pokupki39.ru/blog/lessons.php?id=".$id."";

$from $email;
$to $emailadmin;
$sub '=?windows-1251?B?'.base64_encode($post_title).'?=';
$headers 'From: '.$from.'
'
;
$headers .= 'MIME-Version: 1.0
'
;
$headers .= 'Content-type: text/plain; charset=windows-1251
'
;

mail($to,$sub$mes$headers);

//****

$ok ="<p style='font-family:Verdana; text-align:center; font-size:12px; border:1px solid #0c7f00; padding:5px; margin-bottom:20px; background-color:#ffffff;'><strong>Спасибо! Ваше сообщение отправлено!</strong></p>";




     
// преобразуем Enter в перенос строки
$comtext=str_replace("\n","<br>\n",$comtext);
//****


//Помещаем результат в массив
$GLOBALS['_RESULT'] = array(
'error' => 'no',
'text' => $comtext,
'ok' => $ok
);

//****


}
else
//если ошибки есть

$log "<p align='center'><font color=#cc0000><strong>Ошибка</strong></font></p><ul style='font-family:Verdana; font-size:12px; border:2px solid #cc0000; padding:10px; margin:20px; width:570px;'>".$log."</ul>";
//Отправляем результат в массив
$GLOBALS['_RESULT'] = array(
'error' => 'yes',      
'er_mess' => $log);
}  
?>

  Ответить  
 
 автор: sim5   (31.01.2011 в 16:05)   письмо автору
 
   для: antosha23   (31.01.2011 в 16:02)
 

Вы издеваетесь? Вам буквально недавно вот про это говорили:
$message=htmlspecialchars($_POST['message']);
а оно так и осталось.

  Ответить  
 
 автор: antosha23   (31.01.2011 в 16:08)   письмо автору
 
   для: sim5   (31.01.2011 в 16:05)
 

<?php include("blocs/bd.php");
if(isset(
$_POST['id'])){$id $_POST['id'];}

// Запрет на кэширование
header("Expires: Mon, 23 May 1995 02:00:00 GTM");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GTM");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
//****

$log =="";
$error="no"//флаг наличия ошибки

require_once 'JsHttpRequest.php';
$JsHttpRequest =& new JsHttpRequest("windows-1251");

//Короткие имена переменных и обрезка пробелов img_title
$comtext trim($_POST['comtext']);
$email trim($_POST['email']);
$name trim($_POST['name']);
$code trim($_POST['code']);
session_start();
if (!empty(
$_REQUEST['captcha'])) 
{
    if (empty(
$_SESSION['captcha']) || trim(strtolower($_REQUEST['captcha'])) != $_SESSION['captcha']) 
    {
        
$note'Please enter valid text';
    } 
    else 
    {
    if(
$_SERVER["REQUEST_METHOD"] == "POST")
{

$name=htmlentities($_POST['name']); 
$email=htmlentities($_POST['email']);
$code=htmlentities($_POST['code']);

// Insert SQL Statement 
$note'Values Inserted';
}
 
    }

  
    unset(
$_SESSION['captcha']);
    }


//Проверка email адреса

function isEmail($email)
            {
                return(
preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
                        
,$email));
            } 
         
if(
$email == '')
                {
   
$log .= "<div>Пожалуйста, введите Ваш email!</div>";
   
$error "yes";
                  
                }         

else if(!
isEmail($email))
                {
                   
   
$log .= "<div>Вы ввели неправильный e-mail. Пожалуйста, исправьте его!</div>";
   
$error "yes";
                }
//Проверка наличия введенного текста комментария
//****


//Проверка наличия введенного текста комментария
if (empty($comtext))
{
   
$log .= "<div>Необходимо указать текст сообщения!</div>";
   
$error "yes";
}
//****


//Проверка длины текста комментария
if(strlen($comtext)>500)
{
   
$log .= "<div>Слишком длинный текст, в вашем распоряжении 500 символов!</div>";
   
$error "yes";
}
//****   
    
//Проверка на наличие длинных слов
$mas preg_split("/[\s]+/",$comtext);
foreach(
$mas as $index => $val)
{
  if (
strlen($val)>60)
  {
   
$log .= "<div>Слишком длинные слова (более 60 символов) в тексте записи!</div>";
   
$error "yes";
   break;
  }
}
//****
   
//Должнен быть хоть один символ на русском языке
$spam=1;  

for(
$i=0;$i<strlen($comtext);$i++)
{
   if((
ord($comtext[$i])>=192) && (ord($comtext[$i])<=255)){$spam=0;break;}
}

if (
$spam == 1)
{
   
$log .= "<div>В комментарии нет ни одной русской буквы. Не принимается!</div>";
   
$error "yes";    

//**** 
//Экранирование и преобразование опасных символов
if (!get_magic_quotes_gpc())
{
$comtext addslashes($comtext);
$email addslashes($email);
$img addslashes($img);
}


//****


//Если нет ошибок отправляем email  
if($error=="no")
{

$date date("Y-m-d");
$result2 mysql_query ("INSERT INTO comments (post,author,comtext,date) VALUES ('$id','$name','$comtext','$date')",$db);
$prov 0;

   
//Отправка письма админу о новом комментарии
$emailadmin 'antosha2027@gmail.com';//e-mail админа
$result3 mysql_query ("SELECT title FROM lessons WHERE id='$id'",$db);
$myrow3 mysql_fetch_array ($result3);
$post_title $myrow3["title"];
$sub=$post_title;
$mes "Появился новый комментарий к уроку!\n".$post_title."\n\nкоментарий добавил: ".$name."\n ".$comtext."\n\nСсылка на страничку: http://anton-blogdesign.pokupki39.ru/blog/lessons.php?id=".$id."";

$from $email;
$to $emailadmin;
$sub '=?windows-1251?B?'.base64_encode($post_title).'?=';
$headers 'From: '.$from.'
'
;
$headers .= 'MIME-Version: 1.0
'
;
$headers .= 'Content-type: text/plain; charset=windows-1251
'
;

mail($to,$sub$mes$headers);

//****

$ok ="<p style='font-family:Verdana; text-align:center; font-size:12px; border:1px solid #0c7f00; padding:5px; margin-bottom:20px; background-color:#ffffff;'><strong>Спасибо! Ваше сообщение отправлено!</strong></p>";




     
// преобразуем Enter в перенос строки
$comtext=str_replace("\n","<br>\n",$comtext);
//****


//Помещаем результат в массив
$GLOBALS['_RESULT'] = array(
'error' => 'no',
'text' => $comtext,
'ok' => $ok
);

//****


}
else
//если ошибки есть

$log "<p align='center'><font color=#cc0000><strong>Ошибка</strong></font></p><ul style='font-family:Verdana; font-size:12px; border:2px solid #cc0000; padding:10px; margin:20px; width:570px;'>".$log."</ul>";
//Отправляем результат в массив
$GLOBALS['_RESULT'] = array(
'error' => 'yes',      
'er_mess' => $log);
}  
?>

  Ответить  
 
 автор: antosha23   (31.01.2011 в 16:10)   письмо автору
 
   для: antosha23   (31.01.2011 в 16:08)
 

но все же как проверить

  Ответить  
 
 автор: sim5   (31.01.2011 в 16:12)   письмо автору
 
   для: antosha23   (31.01.2011 в 16:08)
 

Не надо повторять.
А это зачем:
$name=htmlentities($_POST['name']);
$email=htmlentities($_POST['email']);
$code=htmlentities($_POST['code']);
?

Зачем вы применяте то сути чего не понимаете? К тому же, если вопрос о капче, зачем вываливать код, который к ней не имеет отношения?

  Ответить  
 
 автор: antosha23   (31.01.2011 в 16:20)   письмо автору
 
   для: sim5   (31.01.2011 в 16:12)
 

<?php include("blocs/bd.php");
if(isset(
$_POST['id'])){$id $_POST['id'];}

// Запрет на кэширование
header("Expires: Mon, 23 May 1995 02:00:00 GTM");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GTM");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
//****

$log =="";
$error="no"//флаг наличия ошибки

require_once 'JsHttpRequest.php';
$JsHttpRequest =& new JsHttpRequest("windows-1251");

//Короткие имена переменных и обрезка пробелов img_title
$comtext trim($_POST['comtext']);
$email trim($_POST['email']);
$name trim($_POST['name']);
$code trim($_POST['code']);
session_start();
if (!empty(
$_REQUEST['captcha'])) 
{
    if (empty(
$_SESSION['captcha']) || trim(strtolower($_REQUEST['captcha'])) != $_SESSION['captcha']) 
    {
        
$note'Please enter valid text';
    } 
    else 
    {
    if(
$_SERVER["REQUEST_METHOD"] == "POST")
{


// Insert SQL Statement 
$note'Values Inserted';
}
 
    }

  
    unset(
$_SESSION['captcha']);
    }


//Проверка email адреса

function isEmail($email)
            {
                return(
preg_match("/^[-_.[:alnum:]]+@((([[:alnum:]]|[[:alnum:]][[:alnum:]-]*[[:alnum:]])\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i"
                        
,$email));
            } 
         
if(
$email == '')
                {
   
$log .= "<div>Пожалуйста, введите Ваш email!</div>";
   
$error "yes";
                  
                }         

else if(!
isEmail($email))
                {
                   
   
$log .= "<div>Вы ввели неправильный e-mail. Пожалуйста, исправьте его!</div>";
   
$error "yes";
                }
//Проверка наличия введенного текста комментария
//****


//Проверка наличия введенного текста комментария
if (empty($comtext))
{
   
$log .= "<div>Необходимо указать текст сообщения!</div>";
   
$error "yes";
}
//****


//Проверка длины текста комментария
if(strlen($comtext)>500)
{
   
$log .= "<div>Слишком длинный текст, в вашем распоряжении 500 символов!</div>";
   
$error "yes";
}
//****   
    
//Проверка на наличие длинных слов
$mas preg_split("/[\s]+/",$comtext);
foreach(
$mas as $index => $val)
{
  if (
strlen($val)>60)
  {
   
$log .= "<div>Слишком длинные слова (более 60 символов) в тексте записи!</div>";
   
$error "yes";
   break;
  }
}
//****
   
//Должнен быть хоть один символ на русском языке
$spam=1;  

for(
$i=0;$i<strlen($comtext);$i++)
{
   if((
ord($comtext[$i])>=192) && (ord($comtext[$i])<=255)){$spam=0;break;}
}

if (
$spam == 1)
{
   
$log .= "<div>В комментарии нет ни одной русской буквы. Не принимается!</div>";
   
$error "yes";    

//**** 
//Экранирование и преобразование опасных символов
if (!get_magic_quotes_gpc())
{
$comtext addslashes($comtext);
$email addslashes($email);
$img addslashes($img);
}


//****


//Если нет ошибок отправляем email  
if($error=="no")
{

$date date("Y-m-d");
$result2 mysql_query ("INSERT INTO comments (post,author,comtext,date) VALUES ('$id','$name','$comtext','$date')",$db);
$prov 0;

   
//Отправка письма админу о новом комментарии
$emailadmin 'antosha2027@gmail.com';//e-mail админа
$result3 mysql_query ("SELECT title FROM lessons WHERE id='$id'",$db);
$myrow3 mysql_fetch_array ($result3);
$post_title $myrow3["title"];
$sub=$post_title;
$mes "Появился новый комментарий к уроку!\n".$post_title."\n\nкоментарий добавил: ".$name."\n ".$comtext."\n\nСсылка на страничку: http://anton-blogdesign.pokupki39.ru/blog/lessons.php?id=".$id."";

$from $email;
$to $emailadmin;
$sub '=?windows-1251?B?'.base64_encode($post_title).'?=';
$headers 'From: '.$from.'
'
;
$headers .= 'MIME-Version: 1.0
'
;
$headers .= 'Content-type: text/plain; charset=windows-1251
'
;

mail($to,$sub$mes$headers);

//****

$ok ="<p style='font-family:Verdana; text-align:center; font-size:12px; border:1px solid #0c7f00; padding:5px; margin-bottom:20px; background-color:#ffffff;'><strong>Спасибо! Ваше сообщение отправлено!</strong></p>";




     
// преобразуем Enter в перенос строки
$comtext=str_replace("\n","<br>\n",$comtext);
//****


//Помещаем результат в массив
$GLOBALS['_RESULT'] = array(
'error' => 'no',
'text' => $comtext,
'ok' => $ok
);

//****


}
else
//если ошибки есть

$log "<p align='center'><font color=#cc0000><strong>Ошибка</strong></font></p><ul style='font-family:Verdana; font-size:12px; border:2px solid #cc0000; padding:10px; margin:20px; width:570px;'>".$log."</ul>";
//Отправляем результат в массив
$GLOBALS['_RESULT'] = array(
'error' => 'yes',      
'er_mess' => $log);
}  
?>

  Ответить  
 
 автор: sim5   (31.01.2011 в 16:27)   письмо автору
 
   для: antosha23   (31.01.2011 в 16:20)
 

Если вы еще раз повторите код свой, я плюну и все (другие не знаю как). Ибо и не только это, а еще вот это:
$comtext = addslashes($comtext);
$email = addslashes($email);
$img = addslashes($img);
для почтового отправления совсем лишнее. Вы сейчас просто уберете (даже не понимая почему лишнее, и надо ли убирать) и опять выставите?

Вот у вас проверяется код каптчи (только этот кусочек, а не вся портянка):
if (!empty($_REQUEST['captcha']))  

    if (empty($_SESSION['captcha']) || trim(strtolower($_REQUEST['captcha'])) != $_SESSION['captcha'])  
    { 
        $note= 'Please enter valid text'; 
    }
А помещение кода каптчи в сессию, это в файле генерирующем ее.

  Ответить  
 
 автор: antosha23   (31.01.2011 в 16:27)   письмо автору
 
   для: antosha23   (31.01.2011 в 16:20)
 

поможите или нет

  Ответить  
 
 автор: sim5   (31.01.2011 в 16:37)   письмо автору
 
   для: antosha23   (31.01.2011 в 16:27)
 

В чем? Условие проверки каптчи, которое у вас в коде прописано, не противоречит истине. Что я могу сказать тут. Что за проблема с каптчей, конкретно что происходит, может причину не в этом коде искать надо, а в другом?

Что касается данного скрипта, по хорошему его просто выкинуть надо, это самое лучшее решение, которое я могу предложить, если вы сами не в состоянии понять, что htmlspecialchars не выбрасывать надо, а применять в том месте кода, где это требуется. А это требуется при возврате формы пользователю, при наличие ошибок ввода, ибо это предотвратит искажение html-кода, и "вредных" вставок в текст. Вы же просто вышвырнули и все.

Кстати, я не вижу чтобы была форма для возврата (хотя если этот код как часть подключаемых, тогда понятно).

  Ответить  
 
 автор: cheops   (31.01.2011 в 16:29)   письмо автору
 
   для: sim5   (31.01.2011 в 16:05)
 

Все-таки такие здоровые листинги лучше прикреплять к сообщению - тяжело листать такие объемные темы.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования