vlzkonopatov
Новичок
Добрый день . У меня проблема. Я не могу вставить капчу на форму регистрации. Не отображается картинка. Что сделать?
login.php
authorization.php
captcha.php
login.php
PHP:
<script>
$(function() {
$("#log").validate({
rules: {
email: {
required: true,
minlength: 10
},
password: {
required: true,
minlength: 5
}
}});
});
</script>
<script language="JavaScript">
function changeBut(nam) {
document.forms[0].here.value = nam;
}
</script>
<HTML>
<head>
</head>
<body>
<div align="center" class="ui-widget-content" style="width: 20%; max-width:1200px; min-width:400px;margin:10px auto;" >
<h3>Вход на сайт:</h3>
<form method="POST" action="/">
<table class="ui-widget-content">
<tr>
<td>Email:</td>
<td><input required type="email" name="email" class='text ui-widget-content ' value="" size=20 ></td>
</tr>
<tr>
<td>Password:</td>
<td><input required type="password" name="password" class='text ui-widget-content ' value="" size=0 ></td>
</tr>
<?php if ($_SESSION['MM_KEY']>2) { echo '<tr><td><img src="captcha.php"/></td><td><input class="input" type="text" name="norobot" /></td></tr>';}?>
<tr>
<td> <input id="button" type="submit" value=" OK "></input> </td>
<td> <script src="//ulogin.ru/js/ulogin.js"></script> <div id="uLogin" data-ulogin="display=small;fields=first_name,last_name;providers=vkontakte,odnoklassniki,mailru,facebook;hidden=other;redirect_uri=http%3A%2F%2Fmysite.ru%2Fengine%2Flibrary%2FuLoginAUT.php"></div> </td>
</tr>
<td></td>
<td><p align="right"><a href='index.php?p=register'><u>Зарегистироваться.</u></a> </p> </td>
</table>
</form>
</div>
</body>
</html>
PHP:
<?php
session_start(); //обязательно в самом начале
require_once('config.php');
require_once('functions.php');
//require_once('captcha.php');
$url_success = "/engine/";
if (isset($_GET['accesscheck'])) $_SESSION['PrevUrl'] = $_GET['accesscheck'];
//обработка отправки данных из формы
if (isset($_POST['email'])) {
//получаем из формы
$email= sanitize($_POST['email']);
$password=md5(sanitize($_POST['password']));
//создаем защищенный запрос для поиска логина и пароля в БД
$query=sprintf(
"SELECT
password, email
FROM
users
WHERE
password=%s AND email=%s",
GetSQLValueString($password, "text"),
GetSQLValueString($email, "text")
);
$result = mysql_query($query) or die(mysql_error()); //делаем запрос к БД
$count = mysql_num_rows($result); //получаем количество найденных пользователей
//Если найден пользователь, т.е. есть такая пара логин пароль
if ($_SESSION['MM_KEY']>3){
if (md5($_POST['norobot']) == $_SESSION['randomnr2'] )
if ($count===1) {
// для совместимости с версиями PHP проверяем версию и только потом обновляем сессию
//записываем данные в сессию
$ResultQuery = mysql_query ("SELECT * FROM `users` WHERE (email='$email') ");
while($Result=mysql_fetch_array($ResultQuery)){
$login=$Result[1];
$key=$Result[4];
}
$_SESSION['MM_Username'] = $login;
//$_SESSION['MM_UserGroup'] = $login; //записываем данные в сессию
// if (isset($_SESSION['PrevUrl'])) //и если установлена переменная сессии
// $url_success = $_SESSION['PrevUrl'];
header("Location: " . $url_success );
$_SESSION['MM_KEY']=0;
} else {//если такого пользователя нет, то выводим ошибку!
$_SESSION['MM_KEY']=$_SESSION['MM_KEY']+1;
echo "<div id='error_message'><div align='left' class='ui-widget' style='width: 90%; max-width:1200px; margin: 20px auto; padding: 10px;'><div class='ui-state-error ui-corner-all' style='width: 90%; max-width:1200px; margin: 0px auto; padding: 10 .7em;'><p><span class='ui-icon ui-icon-alert' style='float: left; margin-right: .3em;'></span><strong>Error: </strong>Username and/ or password is wrong </p></div></div></div>";
}
else echo "<div id='error_message'><div align='left' class='ui-widget' style='width: 90%; max-width:1200px; margin: 20px auto; padding: 10px;'><div class='ui-state-error ui-corner-all' style='width: 90%; max-width:1200px; margin: 0px auto; padding: 10 .7em;'><p><span class='ui-icon ui-icon-alert' style='float: left; margin-right: .3em;'></span><strong>Error: </strong>капча введена не верно </p></div></div></div>";
}
else
if ($count===1) {
// для совместимости с версиями PHP проверяем версию и только потом обновляем сессию
//записываем данные в сессию
$ResultQuery = mysql_query ("SELECT * FROM `users` WHERE (email='$email') ");
while($Result=mysql_fetch_array($ResultQuery)){
$login=$Result[1];
$key=$Result[4];
}
$_SESSION['MM_Username'] = $login;
//$_SESSION['MM_UserGroup'] = $login; //записываем данные в сессию
// if (isset($_SESSION['PrevUrl'])) //и если установлена переменная сессии
// $url_success = $_SESSION['PrevUrl'];
header("Location: " . $url_success );
$_SESSION['MM_KEY']=0;
} else {//если такого пользователя нет, то выводим ошибку!
$_SESSION['MM_KEY']=$_SESSION['MM_KEY']+1;
echo "<div id='error_message'><div align='left' class='ui-widget' style='width: 90%; max-width:1200px; margin: 20px auto; padding: 10px;'><div class='ui-state-error ui-corner-all' style='width: 90%; max-width:1200px; margin: 0px auto; padding: 10 .7em;'><p><span class='ui-icon ui-icon-alert' style='float: left; margin-right: .3em;'></span><strong>Error: </strong>Username and/ or password is wrong </p></div></div></div>";
}
}
Код:
<?php
session_start();
$randomnr = rand(1000, 9999);
$_SESSION['randomnr2'] = md5($randomnr);
$im = imagecreatetruecolor(100, 38);
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 150, 150, 150);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 200, 35, $black);
$font = dirName(__FILE__).'/Karate.ttf';
imagettftext($im, 20, 4, 22, 30, $grey, $font, $randomnr);
imagettftext($im, 20, 4, 15, 32, $white, $font, $randomnr);
header("Expires: Wed, 1 Jan 1997 00:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header ("Content-type: image/gif");
imagegif($im);
imagedestroy($im);
?>
Последнее редактирование: