CAPTCHA на PHP

php, web-розробка

Tagged Under : , , , , ,

Виявляється, далеко не всі знають, що таке c.a.p.t.c.h.a. Мій знайомий недавно мене запитав, для чого на веб-сайтах, – особливо коли щось треба скачати чи опублікувати коментар, – потрібно ввести цифри з картинки, які до того ж так погано видно. Отож ліквідація безграмотності – зараз спробую пояснити, що значить картинка з цифрами, і далі розкажу, як зробити captcha з допомогою PHP. Хто теоритично готовий – може переходити зразу до технічної частини.

Отож, згідно вікіпедії, CAPTCHA (англ. “completely automated public Turing test to tell computers and humans apart” — повністю автоматизований публічний тест Тюринга для розрізнення комп’ютерів і людей) — торгова марка Університету Карнегі-Меллона, комп’ютерний тест, який використовується для того, щоб визначити, хто використовує систему — людина чи комп’ютер. Термін з’явився у 2000 році.

У більшості випадків captcha – це така невеличка картинка з набором букв і цифр, які потрібно ввести в полі вводу, розташованого поряд. При правильному вводі відбувається певна дія (наприклад скачування файлу або публікація коментаря), при неправильному – пропонується ввести циферки ще раз. Це робиться для того, щоб впевнитись, що циферки вводить саме людина а не зла компютерна програма, спам-бот. Цифри важко прочитати – це робиться спеціально для того, щоб і компютерній програмі було важче просканувати цифри на малюнку. Загалом капчі не обмежуються лише картинками. Зустрічаються captcha у вигляді загадок, прохань доповнити фразу або легкі арифметичні задачі (1 + 2 = *) – завдання, які зазвичай без найменших проблем вирішуються звичайними людьми, зате не вирішуються не підготовленими спеціально для цього програмами. Наприклад, хіба важко доповнити таке (ввести те, що має бути на місці трьох крапок):
“Столиця Сомалі – …”
Жартую. Це повинне бути щось дійсно легке, таке, як, наприклад, “Д’Артаньян і … мушкетери”. (Кому все ж цікаво, столиця Сомалі – Могадішу:)

Але ми зараз розглядаємо капчу в її класичному вигляді, тобто як малюнок. Тому приступимо до створення captcha з допомогою PHP.

читати далі про CAPTCHA на PHP