подскажите пожалуйста как пользоваться этой штукой? скачал отсюда http://captcha.ru поместил код себе на страницу, выводит ошибку:
оть, нашел убрал вот это: PHP: <? if(function_exists("imagejpeg")){ header("Content-Type: image/jpeg"); imagejpeg($img2, null, $jpeg_quality); }else if(function_exists("imagegif")){ header("Content-Type: image/gif"); imagegif($img2); }else if(function_exists("imagepng")){ header("Content-Type: image/x-png"); imagepng($img2); } ?> ошибка пропала... но капча усе равно не работает, пишет: Notice: Undefined index: PHPSESSID in z:\***\index.php on line 15 Notice: Undefined variable: _SESSION in z:\***\index.php on line 36 Вот индекс: PHP: <html> <body> <?php error_reporting (E_ALL); include('kcaptcha.php'); if(isset($_REQUEST[session_name()])){ session_start(); } $captcha = new KCAPTCHA(); if($_REQUEST[session_name()]){ $_SESSION['captcha_keystring'] = $captcha->getKeyString(); } ?> <form action="./" method="post"> <p>Enter text shown below:</p> <p><img src="PATH-TO-THIS-SCRIPT?<?php echo session_name()?>=<?php echo session_id()?>"></p> <p><input type="text" name="keystring"></p> <p><input type="submit" value="проверить"></p> </form> <?php if(count($_POST)>0){ if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){ echo "Correct"; }else{ echo "Wrong"; } } unset($_SESSION['captcha_keystring']); ?> </body></html>
Fant0M, это убирать не надо. 1.еще раз прочитай статью по ссылке. это раз. 2.не надо непеределанные примеры использовать. это два.
да прочитал, если это убирать не надо, тогда получается что Код (Text): [html][body][/body][/html] были лишними... но если их убрать, то отображается только сама картинка ((( Вот вообще оригинал: PHP: <?php error_reporting (E_ALL); /* Using: <?php session_start(); ?> <form action="./" method="post"> <p>Enter text shown below:</p> <p><img src="PATH-TO-THIS-SCRIPT?<?php echo session_name()?>=<?php echo session_id()?>"></p> <p><input type="text" name="keystring"></p> <p><input type="submit" value="Check"></p> </form> <?php if(count($_POST)>0){ if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){ echo "Correct"; }else{ echo "Wrong"; } } unset($_SESSION['captcha_keystring']); ?> */ include('kcaptcha.php'); if(isset($_REQUEST[session_name()])){ session_start(); } $captcha = new KCAPTCHA(); if($_REQUEST[session_name()]){ $_SESSION['captcha_keystring'] = $captcha->getKeyString(); } ?> подскажите пожалуйста как сделать? А то я, как истинный блондин, вообще чет сообразить не могу ((( :roll:
перенес, та же ошибка... PHP: <?php error_reporting (E_ALL); if(isset($_REQUEST[session_name()])){ session_start(); } include('kcaptcha.php'); ?> <html><body> <? ..... ?> упс, не заметил, исправлю...
Помогите скрестить форму логининга и kcaptcha Помогите,пожалуйста,скрестить страницу логининга(код приведен ниже) и kcaptcha(http://www.captcha.ru/kcaptcha/) PHP: <?php if(eregi("opera",$HTTP_USER_AGENT)) { echo '<p align="center"><font face="Arial"><b><font color="#800000"> Система обнаружила, что вы используете браузер "Opera". </font></b><b><font color="#800000"><br></font></b> <font color="#008000">В магазине с панелью управления необходимо работать с браузера отличным от "</font><font color="#008000">Opera". <a href="javascript:history.go(-1)">Назад</a></font></font></p>'; exit; } session_start(); include ('mysql.php'); if (isset($_GET['logout'])) { if (isset($_SESSION['user_id'])) unset($_SESSION['user_id']); setcookie('login', '', 0, "/"); setcookie('password', '', 0, "/"); // и переносим его на главную header('Location: login.php'); exit; } if (isset($_SESSION['user_id'])) { // юзер уже залогинен, перекидываем его отсюда на закрытую страницу header('Location: index1.php'); exit; } if (!empty($_POST)) { $login = (isset($_POST['login'])) ? mysql_real_escape_string($_POST['login']) : ''; $query = "SELECT `salt` FROM `users` WHERE `login`='{$login}' LIMIT 1"; $sql = mysql_query($query) or die(mysql_error()); if (mysql_num_rows($sql) == 1) { $row = mysql_fetch_assoc($sql); // итак, вот она соль, соответствующая этому логину: $salt = $row['salt']; // теперь хешируем введенный пароль как надо и повторям шаги, которые были описаны выше: $password = md5(md5($_POST['password']) . $salt); // и пошло поехало... // делаем запрос к БД // и ищем юзера с таким логином и паролем $query = "SELECT `id` FROM `users` WHERE `login`='{$login}' AND `password`='{$password}' LIMIT 1"; $sql = mysql_query($query) or die(mysql_error()); // если такой пользователь нашелся if (mysql_num_rows($sql) == 1) { // то мы ставим об этом метку в сессии (допустим мы будем ставить ID пользователя) $row = mysql_fetch_assoc($sql); $_SESSION['user_id'] = $row['id']; // если пользователь решил "запомнить себя" // то ставим ему в куку логин с хешем пароля $time = 86400; // ставим куку на 24 часа if (isset($_POST['remember'])) { setcookie('login', $login, time()+$time, "/"); setcookie('password', $password, time()+$time, "/"); } // и перекидываем его на закрытую страницу header('Location: index1.php'); exit; // не забываем, что для работы с сессионными данными, у нас в каждом скрипте должно присутствовать session_start(); } else { die('Такой логин с паролем не найдены в базе данных. И даём ссылку на повторную авторизацию. — <a href="login.php">Авторизоваться</a>'); } } else { die('пользователь с таким логином не найден, даём ссылку на повторную авторизацию. — <a href="login.php">Авторизоваться</a>'); } } print ' <html> <head> <title>Авторизация</title> <style> .editstyle { font-family: Tahoma; font-size: 8pt; border: 1px solid #C0C0C0; } .btstyle { font-family: Tahoma; font-size: 8pt; border: 1px solid #C0C0C0; cursor: pointer; } .tablemy { font-family: tahoma; font-size: 8pt; color: #3C3C3C; } </style> <script type="text/javascript" src="keyboard.js" charset="UTF-8"></script> <link rel="stylesheet" type="text/css" href="keyboard.css"> </head> <body topmargin="50" bgcolor="#F9F7F8"> <form action="login.php" method="post"><div align="center"> <table border="1" style="border-collapse: collapse" width="292" height="157" bgcolor="#FFFFFF" bordercolor="#3C3C3C"> <tr> <td><div align="center"><table class="tablemy"> <tr> <td>Логин:</td> <td><input type="text" name="login" class="keyboardInput" /></td> </tr> <tr> <td>Пароль:</td> <td><input type="password" name="password" class="keyboardInput" /></td> </tr> <tr> <td>Запомнить:</td> <td><input type="checkbox" name="remember" /></td> </tr> <tr> <td></td> <td><input type="submit" value="Авторизоваться" class="btstyle" /></td> </tr> </table></div></td> </tr> </table></div> </form> '; ?> </body> </html> Пробовал уже многими путями.Ничего не получается!Заранее спасибо![/url]
Нет.Сама страница логининга работает правильно.Нужно лишь добавить к ней картинку капчи и её проверку,т.е. правильно совместить мой код с кодом из kcaptcha(http://www.captcha.ru/kcaptcha/)