Я использую этот скрипт: https://github.com/claviska/simple-php-captchaPHP Captcha возвращает старое значение и проверяет старое значение
Чтобы сделать капчу в PHP.
У меня есть эти коды:
session_start();
include_once 'simple-php-captcha.php';
$_SESSION = array();
$_SESSION['captcha'] = simple_php_captcha();
$code = $_SESSION['captcha']['code'];
if (isset($_POST['username'])&&isset($_POST['password'])) {
if (!empty($_POST['username']) && !empty($_POST['password'])) {
$username = $_POST['username'];
$password = $_POST['password'];
if (isset($_POST['captcha'])&&!empty($_POST['captcha'])) {
$captcha = $_POST['captcha'];
if ($captcha == $code) {
echo "Login";
} else {
$errors[] = "Capcha is Not True.";
}
} else {
$errors[] = "Enter capcha.";
}
} else {
$errors[] = "Enter all.";
}
}
и HTML формы:
<form accept="" method="POST">
username: <input type="text" name="username">
password: <input type="password" name="password">
captcha: <input type="text" name="captcha">
<img src="<?php echo $_SESSION['captcha']['image_src']; ?>">
<input type="submit" class="Button" value="submit">
</form>
НО
Проблема заключается в том, что каждый раз, когда я ввести капчу и отправить форму, новее капчи будет сформирована и форма всегда будет возвращена НЕ ИСТИННАЯ CAPTCHA.
Например, я открываю страницу, и, например, captcha является следующим: 52111, (я ввожу его правильно), затем я отправляю, затем я вижу ошибку, что captcha является неправильным, потому что новый сгенерированный captcha является другим : 48852.
Я имею в виду каждый раз, когда страница генерирует более новую, как я могу исправить эту проблему ??
Tnx, но не сработал :( – Pafo
Приложите свой полный скрипт. Этот код работает. У вас есть ошибка где-то еще. – BaBL86