Капча - простой пример. - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > Полезное / Common > Программирование / Programming > PHP

PHP Форум как для начинающих программистов на PHP так и для профессионалов этого дела. Если нужно создать скрипт, функцию и т.д, но не знаете как, спросите у нас и мы вам подскажем. Здесь вы найдете примеры скриптов которые вы сможете использовать на сайтах своих серверов (онлайн, регистрация, семь печатей, топ игроков). Так же много книг и статей.

Ответ
Опции темы
Непрочитано 24.05.2008, 06:58   #1
Аватар для PROGRAMMATOR
Администратор

Автор темы (Топик Стартер) Капча - простой пример.

Вот очень простой пример капчи :

PHP код:
<?
session_start 
();
 
switch (
$a) {
    case 
'image':
        
$im = @imagecreate (8020) or die ("Cannot initialize new GD image stream!");
        
$bg imagecolorallocate ($im232238247);
        
$char $_SESSION['code'];
 
        
//создаём шум на фоне
        
for ($i=0$i<=128$i++) {
            
$color imagecolorallocate ($imrand(0,255), rand(0,255), rand(0,255)); //задаём цвет
            
imagesetpixel($imrand(2,80), rand(2,20), $color); //рисуем пиксель
        
}
 
        
//выводим символы кода
        
for ($i 0$i strlen($char); $i++) {
            
$color imagecolorallocate ($imrand(0,255), rand(0,128), rand(0,255)); //задаём цвет
            
$x $i 20;
            
$y rand(16);
            
imagechar ($im5$x$y$char[$i], $color);
        }
 
        
/*/упрощённый вариант
        $color = imagecolorallocate($img, 0, 0, 0);
        imagestring($im, 3, 5, 3, $char, $color);*/
 
        //антикеширование
        
header("Expires: Mon, 26 Jul 1997 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("imagepng")) {
           
header("Content-type: image/png");
           
imagepng($im);
        } elseif (
function_exists("imagegif")) {
           
header("Content-type: image/gif");
           
imagegif($im);
        } elseif (
function_exists("imagejpeg")) {
           
header("Content-type: image/jpeg");
           
imagejpeg($im);
        } else {
           die(
"No image support in this PHP server!");
        }
        
imagedestroy ($im);    
    break;
    case 
'submit':
        
//проверка кода
        
if (empty($_GET['code']) or empty($_SESSION['code'])) {
            echo 
'Вы не указали код подтверждения';
        } elseif (
$_GET['code'] != $_SESSION['code']) {
            echo 
'Код подтверждения не совпадает';
        } else {
            echo 
'Всё Ok!';
        }
    break;
    default:
        
$_SESSION['code'] = substr(md5(uniqid("")),0,4);
        echo 
'<form action="captcha.php" method="get">'.
            
'<input type="hidden" name="a" value="submit">'.
            
'<label for="code">Код подтверждения:</label>'.
            
'<input type="text" id="code" name="code" size="4" maxlength="4">'.
            
'<img align="absmiddle" src="captcha.php?a=image">'.
            
'<input type="submit" value="Go">'.
            
'</form>';
    break;
}
?>
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 30.06.2008, 20:58   #2
Пользователь

По умолчанию Ответ: Капча - простой пример.

Это конечно все хорошо, но мне больше нравится капча с проекта _http://captcha.ru/ , читал что она очень стойкая с взломам, напоминает очень капчу которая используется на гугле, ну я не думаю что на гугле стали были использовать небезопасную капчу )) Скачать это чудо можно _http://captcha.ru/kcaptcha/.
Пример работы:
_http://captcha.ru/captcha/index.php
__________________
Потому что есть Алешка у меня
aleshka вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 05.07.2008, 23:43   #3
Пользователь

По умолчанию Ответ: Капча - простой пример.

PROGRAMMATOR и aleshka, по спасибке но на булке вроде подключается библиотека GD2 с помощью которой генерируется произвольный шрифт и фон капчи
Paradox вне форума Отправить сообщение для Paradox с помощью ICQ Ответить с цитированием
Непрочитано 05.07.2008, 23:48   #4
Аватар для PROGRAMMATOR
Администратор

Автор темы (Топик Стартер) Ответ: Капча - простой пример.

Paradox, в моём примере используется та самая библиотека GD
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Непрочитано 20.05.2009, 09:39   #5
Новичок

По умолчанию Ответ: Капча - простой пример.

Цитата:
Сообщение от aleshka Посмотреть сообщение
Это конечно все хорошо, но мне больше нравится капча с проекта _http://captcha.ru/ , читал что она очень стойкая с взломам, напоминает очень капчу которая используется на гугле, ну я не думаю что на гугле стали были использовать небезопасную капчу )) Скачать это чудо можно _http://captcha.ru/kcaptcha/.
Пример работы:
_http://captcha.ru/captcha/index.php
чёт ссылки не работают
RiCo вне форума Ответить с цитированием
Непрочитано 19.07.2009, 15:38   #6
Аватар для Voltage
Пользователь

По умолчанию Ответ: Капча - простой пример.

мне больше нравится reCAPTCHA - достаточно стойкая, и к тому же ответы используются для оцифровки книг. пример как реализовать на php - здесь
__________________
Voltage вне форума Ответить с цитированием
Непрочитано 19.07.2009, 17:14   #7
Аватар для PROGRAMMATOR
Администратор

Автор темы (Топик Стартер) Ответ: Капча - простой пример.

А вот мне reCAPTCHA не нравится, там хоть и трезвый, но с третьего раза попадешь. Гораздо проще написать скрипт "рандомных вопросов" и вопросы по теме ресурса, что бы только "кто в теме" регистрировались.

ps Кстати, после запуска антикапчи - все эти капчи до одного места, их все равно вводят в ручную студенты.
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Непрочитано 16.08.2009, 08:38   #8
Новичок

По умолчанию Ответ: Капча - простой пример.

Хелп! Я сделал свой скрипт, у меня код ошибок по другому:

PHP код:
if ( $mail == ""
    {
echo  
"<div align=left>Введите свой E-mail</div><br />";
    
$er 1;
    }

if ( 
$ips == ""
    {
echo  
"<div align=left>Введите IP адрес</div><br />";
    
$er 1;
    }

if ( 
$port == ""
    {
echo  
"<div align=left>Введите Порт</div><br />";
    
$er 1;
    }

if ( 
$site == ""
    {
echo  
"<div align=left>Введите URL сайта</div><br />";
    
$er 1;
    }

if ( 
$type == ""
    {
echo  
"<div align=left>Введите тип игры</div><br />";
    
$er 1;
    }

if ( 
$icq == ""
    {
echo  
"<div align=left>Введите ICQ номер</div><br />";
    
$er 1;
    }

if (
$er == "")
    { 
Как мне сдлелать, чтобы код ошибки этой капчи:

PHP код:
<?php
if(count($_POST)>0){
    if(isset(
$_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){
        echo 
"Correct";
    }else{
        echo 
"Ошибка, вы не верно ввели текст с изображения";
    }
}
unset(
$_SESSION['captcha_keystring']);
?>
был присоеденен к код ошибки скрипта (выше написал), когда я все ввожу в полях, кроме капчи, там пишет "не верно", но заявка без капчи идет.
и подскажите, как сделать код на некоректность мыла!
Зарание спасибо!

Последний раз редактировалось sarkmisha; 16.08.2009 в 09:58.
sarkmisha вне форума Ответить с цитированием
Ответ

Метки
капча на php


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 04:46. Часовой пояс GMT +3.

Вверх