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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблемы с каптчей

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Проблемы с каптчей
Volt
Отправлено: 21 Января, 2011 - 08:30:51
Post Id


Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Янв. 2011  


Помог: 1 раз(а)




ребята подскажите как сделать в регистрационном меню сделать каптчу и ее проверку..
 
 Top
dima4321
Отправлено: 21 Января, 2011 - 09:48:05
Post Id


Новичок


Покинул форум
Сообщений всего: 56
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




Вот тебе простые проверки против робота !
дерзай ! ))

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.       ini_set('display_errors',1);
  3.       error_reporting(E_ALL);
  4.      
  5.           $m=array('2+2'=>'4','3+3'=>'6','5+4'=>'9');
  6.          
  7.            $rand= array_rand($m);
  8.          
  9.           ?>
  10.  
  11. <html>
  12.  
  13.       <head>
  14.  
  15.        </head>
  16.        <body>
  17.       <form METHOD="POST">
  18.       <table cellspacing=10>
  19.       <tr>
  20.       <td><b>Какова сумма <? echo $rand; ?>  </b></td> <td><input type=text name="otvet"></td>
  21.       </tr>
  22.       </table>
  23.       </form>
  24.      
  25.          
  26.           <?PHP
  27.       ini_set('display_errors',1);
  28.       error_reporting(E_ALL);
  29.      
  30.           if(isset($_POST['otvet']))
  31.           {
  32.           $new=$_POST['otvet'];
  33.          
  34.          
  35.           if(array_search($new, $m))
  36.           {
  37.           echo "ты человек";
  38.           }
  39.           else
  40.           {
  41.           echo "ты робот";
  42.           }
  43.           }
  44.           else
  45.           {
  46.           echo " надо бы ответить";
  47.           }
  48.          
  49.         ?>
 
 Top
OrmaJever
Отправлено: 21 Января, 2011 - 13:07:37
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




dima4321 пишет:
Вот тебе простые проверки против робота !

Это код не проверки робота а програмиста. Любой текст можно распарсить и приплюсовать.
А капча это картинка.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Volt
Отправлено: 22 Января, 2011 - 05:30:55
Post Id


Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Янв. 2011  


Помог: 1 раз(а)




спс большое слушай я кучу сайтов перерыл и не нашол как мне замаскировать пхп скрипт..у вас на сайте не рабочий..
 
 Top
OrmaJever
Отправлено: 22 Января, 2011 - 12:22:05
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Volt пишет:
как мне замаскировать пхп скрипт

А зачем его маскировать? Клиент не как не увидит php код


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Volt
Отправлено: 22 Января, 2011 - 12:32:59
Post Id


Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Янв. 2011  


Помог: 1 раз(а)




нет да вапше чтобы было не index.php а index?
 
 Top
OrmaJever
Отправлено: 22 Января, 2011 - 18:07:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




mod_rewrite - поищите поиском на форуме


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
dima4321
Отправлено: 24 Января, 2011 - 07:58:04
Post Id


Новичок


Покинул форум
Сообщений всего: 56
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




mod_rewrite и прочее переименование нечитабельных урлов применяется лишь для эстетики ссылок.

Чтобы не иметь громадного зверя сгенерированного get запросом , а иметь красивую читабельную ссылку.

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

(Отредактировано автором: 24 Января, 2011 - 07:58:29)

 
 Top
Volt
Отправлено: 24 Января, 2011 - 09:33:10
Post Id


Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Янв. 2011  


Помог: 1 раз(а)




dima4321 ну дай скрипт то плз че тее жалко?
 
 Top
DiosPA
Отправлено: 25 Января, 2011 - 02:16:41
Post Id



Частый гость


Покинул форум
Сообщений всего: 180
Дата рег-ции: Янв. 2011  
Откуда: Россия


Помог: 2 раз(а)




очень просто можно сделать капчу Улыбка
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. //Инициализация сессии
  4. $r=mt_rand(1000,9999);
  5. $code =$r;
  6. //Регистрация переменных текущей сесии
  7.  
  8. for($i=0;$i < 5;$i++)//разбиваем секретный код на массив чисел
  9.   $arr[$i]=substr($r,$i,1);
  10.  
  11. $im=imagecreate(130,40);//создаем картинку
  12. imagecolorallocate($im,255,255,255);
  13. $a=0;
  14. $color_w=imagecolorallocate($im,255,255,255);
  15. $color_g=imagecolorallocate($im,50,50,50);
  16. for($i=0;$i < 5;$i++)//наносим код на картинку
  17.   $arr_=imagettftext($im, 20, rand(-30,30), $a+=21, rand(17,33),$color_g,"ARIAL.TTF",$arr[$i]);
  18.  
  19. header ("Content-type: image/png");
  20. imagepng($im); //выводим капчу
  21.  
  22. ?>
  23.  


далее (тот скрипт где ты будешь проверять картинку)

PHP:
скопировать код в буфер обмена
  1.  
  2. if($_SESSION["code"]== md5($_POST["code"])) {бла бла бла ^_^ }
  3.  

ну думаю что всё понятно )))
PS. в папку со скриптом капчи положи файл ARIAL.TTF
(Добавление)
ну может важно...
выводим капчу так:

CODE (html):
скопировать код в буфер обмена
  1.  
  2. <img id="guamka" src="capcha.php" width="130" height="40"  onclick="document.getElementById('guamka').src='./system/library/capcha.php?rand='+Math.random()"/>
  3.  


тут ещё даписано то что если на неё кликнуть капча перезагрузиться Улыбка
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB