PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (54): В начало « ... 46 47 48 49 50 51 52 53 [54]

> Найдено сообщений: 808
vanicon Отправлено: 28 Апреля, 2010 - 14:52:10 • Тема: Закрытие доступа на 15 минут • Форум: Программирование на PHP

Ответов: 20
Просмотров: 1362
Блокировать не по ip а по id, а id чему будет ровняться или у него будет auto_increment. А если вместо блокировки пользователя выводить ему капчу, то есть если пользователь ошибся 3 раза появляется капча, или это не сможет защитить от подбора паролей.
vanicon Отправлено: 28 Апреля, 2010 - 05:56:53 • Тема: Закрытие доступа на 15 минут • Форум: Программирование на PHP

Ответов: 20
Просмотров: 1362
У меня уже есть вывод "Вы набрали логин или пароль неверно 3 раза" если пароль и логин не совпадают, мне просто вместо этого вывода нужно закрыть соединение на несколько минут и все. Или у меня что то не так в коде?
vanicon Отправлено: 27 Апреля, 2010 - 20:35:45 • Тема: Закрытие доступа на 15 минут • Форум: Программирование на PHP

Ответов: 20
Просмотров: 1362
В таблице users хранится информация о пользователе то есть его логин, пароль и его id
В таблице oshibka хранится информация о пользователе который не правильно ввел пароль и логин три раза, то есть в поле col содержится сколько раз ошибся пользователя, в поле date храниться дата, в поле ip храниться ip пользователя
Есть авторизация на сайте:
Форма авторизации:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  
  3. <form action="index.php" id="form" method="post">
  4.   <p>
  5. <label class="mask-form">Имя пользователя</label><br>
  6. <input name="login"  type="text" class="form-input" maxlength="15">
  7. <label class="mask-form">Пароль</label><br>
  8. <input name="password" class="form-input" type="password" maxlength="15" value="">
  9. </form>
  10.  



Скрипт indexphp:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} }
  4. if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }
  5.  
  6. $ip=getenv("HTTP_X_FORWARDED_FOR");
  7. if (empty($ip) || $ip=='unknown') { $ip=getenv("REMOTE_ADDR"); }
  8.  
  9. $login = stripslashes($login);
  10. $login = htmlspecialchars($login);
  11. $password = stripslashes($password);
  12. $password = htmlspecialchars($password);
  13. //удаляем лишние пробелы
  14. $login = trim($login);
  15. $password = trim($password);
  16. $password = md5($password);//шифруем пароль
  17. $password = strrev($password);// для надежности добавим реверс
  18. $password = $password."b3p6f";
  19.  
  20. $link = mysql_connect("localhost", "root", "")
  21. or die("Ошибка подключения : " . mysql_error());
  22. mysql_select_db("simple") or die("БД не выбрана");
  23.  
  24. $result = mysql_query("SELECT * FROM users WHERE login='$login' AND password='$password'");
  25. $myrow = mysql_fetch_array($result);
  26.  
  27. if ($_POST['submit']) {
  28. if ($myrow['login'] == $login && $myrow['password'] == $password) {  
  29.      $_SESSION['password']=$myrow['password'];
  30.      $_SESSION['login']=$myrow['login'];
  31.      $_SESSION['id']=$myrow['id'];  
  32. echo "<script>
  33. location.href='admin.php'
  34. </script>";}
  35.  
  36. else {
  37. echo "Извените но вы не зашли";
  38. $resultip = mysql_query("SELECT ip FROM oshibka");
  39. $myrowip= mysql_fetch_array($resultip);
  40.  
  41. if ($ip <> $myrowip['ip']){
  42. mysql_query ("INSERT INTO oshibka (ip,date,col) VALUES ('$ip',NOW(),'0')");
  43. }
  44. $result52 = mysql_query("SELECT col FROM oshibka WHERE ip='$ip'");
  45. $myrow52 = mysql_fetch_array($result52);
  46.  
  47. $col = $myrow52['col'] + 1;//Если есть,то приплюсовываем количесво
  48. mysql_query ("UPDATE oshibka SET col=$col WHERE ip='$ip'");
  49. }
  50. }
  51.  
  52. //Если пользователь пароль и логин ввел 3 раза  не правильно
  53.  
  54. if ($col > 2) {
  55. echo "Вы набрали логин или пароль неверно 3 раза";
  56. if ($_POST['submit']) {
  57. if ($myrow['login'] == $login && $myrow['password'] == $password) {
  58.    
  59.      $_SESSION['password']=$myrow['password'];
  60.                   $_SESSION['login']=$myrow['login'];
  61.      $_SESSION['id']=$myrow['id'];
  62.          
  63. mysql_query ("DELETE oshibka WHERE ip='$ip'");  
  64. }
  65.  
  66. else {
  67. echo "Извените но вы не зашли код не верный";
  68. }
  69. }
  70. }
  71. ?>
  72.  

И нужно чтобы вместо echo "Вы набрали логин или пароль неверно 3 раза"; закрывался доступ на 15 минут, помогите разобраться
vanicon Отправлено: 26 Апреля, 2010 - 17:08:02 • Тема: Функция запомнить меня • Форум: HTTP и PHP

Ответов: 33
Просмотров: 24633
А можно по подробней про ActiveX.
vanicon Отправлено: 25 Апреля, 2010 - 15:52:55 • Тема: Функция запомнить меня • Форум: HTTP и PHP

Ответов: 33
Просмотров: 24633
Обрабатывает форму:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. $ip=getenv("HTTP_X_FORWARDED_FOR");
  3. if (empty($ip) || $ip=='unknown') { $ip=getenv("REMOTE_ADDR"); }
  4. $password = md5(md5($_POST["password"]).$ip);
  5.  
  6. if (isset($_POST['save'])){
  7. setcookie("login", $_POST["login"], time()+9999999);
  8. setcookie("password",$password, time()+9999999);
  9. }
  10. ?>
  11.  

Сама форма:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <form action="index.php" id="form" method="post">
  3. <label>Пароль</label><br>
  4. <input name="password" type="password" maxlength="15">
  5. <label>Имя пользователя</label><br>
  6. <input name="login"  type="text" maxlength="15">
  7. <label><input name="save" type="checkbox" value='1'> Запомнить меня</label>
  8. </form>

А так можно будет расшифровать пароль, если хакер скачает файл с куками.
Или если он просто его скачает и поставит себе, сможет ли он войти и сменить пароль.
vanicon Отправлено: 25 Апреля, 2010 - 09:19:35 • Тема: Функция запомнить меня • Форум: HTTP и PHP

Ответов: 33
Просмотров: 24633
Как сделать соль в куках с айпи и юзер агентом посетителя?
vanicon Отправлено: 24 Апреля, 2010 - 15:57:29 • Тема: Функция запомнить меня • Форум: HTTP и PHP

Ответов: 33
Просмотров: 24633
Как в этом случае можно использовать сессии ?
vanicon Отправлено: 24 Апреля, 2010 - 09:40:16 • Тема: Функция запомнить меня • Форум: HTTP и PHP

Ответов: 33
Просмотров: 24633
Есть форма и функция запомнить меня:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <form action="index.php" id="form" method="post">
  3. <label>Пароль</label><br>
  4. <input name="password" type="password" maxlength="15">
  5. <label>Имя пользователя</label><br>
  6. <input name="login"  type="text" maxlength="15">
  7. <label><input name="save" type="checkbox" value='1'> Запомнить меня</label>
  8.  

Скрипт обрабатывающий форму:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. if (isset($_POST['save'])){
  3. setcookie("login", $_POST["login"], time()+9999999);
  4. setcookie("password", $_POST["password"], time()+9999999);
  5. }


И пароль и логин хранится в куках браузера , а если хакер прочитает куки этого браузера, а там все написано: имя пользователя, пароль и сайт на котором нужно войти.

Подскажите как этого избежать?
vanicon Отправлено: 24 Апреля, 2010 - 03:29:21 • Тема: Сколько раз не выполнилось условие • Форум: Программирование на PHP

Ответов: 5
Просмотров: 282
А как включить проверку ip адреса? Не понял
vanicon Отправлено: 21 Апреля, 2010 - 21:42:18 • Тема: Сколько раз не выполнилось условие • Форум: Программирование на PHP

Ответов: 5
Просмотров: 282
Есть условие, которое проверяет правильно ли ввели пароль:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <form method="post">
  3. <div align="center"><label>Пароль</label><br>
  4.     <input name="password" type="password" maxlength="15"</div>
  5. </form>
  6. <?php
  7. $parol='1234567'
  8. if ($parol > $_POST['password']) {
  9.     echo "Пароль правильный";
  10. } else {
  11.     echo "Пароль не правильный";
  12. }
  13. ?>


И мне нужно узнать сколько раз пароль был введен не правильно.
vanicon Отправлено: 28 Января, 2010 - 23:59:52 • Тема: выборка данных в wordpress • Форум: SQL и Архитектура БД

Ответов: 5
Просмотров: 2699
Проблема в том что wordpress использует таксономию и мне не получается выбрать из таблиц данные я вижу где они хранятся, но как выбрать не получается. А в кодексе такого нет. Мне необходимо выбрать данные из других таблиц отличных от той на которой установлен wordpress. Поэтому приходится выбирать данные, я же не большой спец поэтому и обратился если есть спецы по wordpress. Вся таксономия wordpress хранится в трех таблицах
vanicon Отправлено: 27 Января, 2010 - 11:55:34 • Тема: выборка данных в wordpress • Форум: SQL и Архитектура БД

Ответов: 5
Просмотров: 2699
[quote=valenok][/quote]
если бы все было так просто а как же таксономия в wordpress куда ее деть, лучше дельным советом помоги а это и в школе уже проходят
vanicon Отправлено: 27 Января, 2010 - 00:00:43 • Тема: выборка данных в wordpress • Форум: SQL и Архитектура БД

Ответов: 5
Просмотров: 2699
если есть специалисты, которые знакомы с wordpress помогите пожалуйста. Вот я выбираю данные из таблиц таким образом

$result = mysql_query("SELECT * FROM wp_posts WHERE post_status = 'publish' AND post_type = 'post' ORDER BY post_date DESC LIMIT 1");
while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
$zagPrint = $row["post_title"];
$datePrint = $row["guid"];
$postPrint = $row["post_content"];
$postStr = substr($postPrint,0,500);
echo "<center>
<div style=width:230px;>
<h1 style=background:url(http://oblast63.ru/pravoslavie/wp-content/themes/oblast63/images/single-teni.png);position:absolute;margin-top:80px;//margin-left:-113px;text-align:center;width:230px;color:#fff;height:45px;>$zagPrint</h1>

<span id=widimg2><center><a href=$datePrint>$postStr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Далее...<br></a></span><br></center><div></center>";
}
mysql_free_result($result);

Проблема в том что при такой выборки показывает все записи подряд, мне же нужно что бы она выбирала только записи определенной категории или метки, подскажите пример правильного запроса

Страниц (54): В начало « ... 46 47 48 49 50 51 52 53 [54]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB