|
|
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Всем доброго времени суток! Есть у меня pass.php страница с паролем. Который при правильном вводе пароля перекидывает на нужную страницу. Проблема в том, что если скопировать адрес ссылки нужной страницы и открыть в другой вкладке то он не просит пароль. А просто открывает его. Не могу сделать так чтоб при открытии нужной страницы запрашивало пароль. И как таймер установить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 07:41 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
пишите сессию при удачной авторизации, и на нужной странице проверяйте сессию, если нет, редирект на авторизацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 09:31 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnogu, Можете показать пример? И на этом примере я буду дальше копать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 09:58 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Ищите "простая php авторизация" в гугле. Ее можно сделать через куки, или через базу данных. Одна из первых ссылок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 10:34 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Piple0Ищите "простая php авторизация" в гугле. Ее можно сделать через куки, или через базу данных. Одна из первых ссылок Попробовал сделать по этому примеру. Получилось. Но... Но все так же. Вот код: Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. Это срабатывает тогда, когда ссылаешься именно на этот файл(password.php). Если редирект напишу, то он все равно же будет кидать на password.php каждый раз даже если авторизован. Где-то я что-то пропускаю... Тыкните пальцем и укажите плиз... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 12:03 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
вот лишнее Код: php 1. 2. 3. 4. 5. Код: php 1. должно быть на каждой странице ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 13:05 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnoguвот лишнее Код: php 1. 2. 3. 4. 5. Код: php 1. должно быть на каждой странице Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\localhost\www\mobile\yurtarif.php:1) in Z:\home\localhost\www\index.php on line 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 14:00 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
то есть так. Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\localhost\www\mobile\yurtarif.php:1) in Z:\home\localhost\www\mobile\yurtarif.php on line 1 в гугле искал... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 14:02 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
PHucker, перед <?php в самом начале файла не должно быть никаких символов, у вас есть, поэтому и ошибка. Сохраните в utf-8 без bom может скрытый символ какой. notepad++ в помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 14:16 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnoguPHucker, перед <?php в самом начале файла не должно быть никаких символов, у вас есть, поэтому и ошибка. Сохраните в utf-8 без bom может скрытый символ какой. notepad++ в помощь Спасибо, с этим разобрался. Ошибка исчезла. Но страница просто открывается как раньше. Не спрашивает пароль (( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 14:21 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
код страницы покажите ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2014, 14:27 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnoguкод страницы покажите Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. Вот на этом песочница. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 07:28 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Вчера не заметил. Если сохранить без BOM, крякозябры на странице отображаются. Кодировка пропадает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 07:32 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
PHuckerВчера не заметил. Если сохранить без BOM, крякозябры на странице отображаются. Кодировка пропадает. Или денвер затупил не знаю. Седня вот такая проблема... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 07:35 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
ну сессии вы запустили, а проверка переменной где? Код: php 1. 2. 3. 4. 5. про крокозябры: на странице в хедере прописываем meta charset utf-8 в .htaccess пишем addDefaultCharset utf-8 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 09:19 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnoguif (!isset($_SESSION['auth'])) { /*тут редирект, или смерть с грозным сообщением, мол как ты сюда попал, и я записал твой айпи, так что все, хана тебе... и ссылка на страницу авторизации*/ } куда это прописать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 09:45 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
PHucker, после Код: php 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 11:47 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Извините, не понимаю. (Прошу понять и простить). Сюда? Код: html 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 12:24 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnogu, Прописал туда. Но ничего не происходит. Объясните пожалуйста по пунктам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 13:04 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
PHucker, ну вы хоть немного голову подключайте, а не тупо копипаст. - на странице авторизации стартуем сессии - если удачно авторизовались пишем в сессию ваш auth, перенаправляем на нужную страницу - на остальных страницах так же стартуем сессии - проверяем если есть переменная auth в сессии, то показываем страницу, если нет выдаем ошибку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 13:22 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
SharuPoNemnogu- на остальных страницах так же стартуем сессииЛучше бы "инклюдим файл, отвечающий за авторизацию". Ну, это после понимания механизма... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 15:50 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
вот из http://phpfaq.ru/sessions создадим файл auth.php: <? if (isset($_POST['auth_name'])) { $name=mysql_real_escape_string($_POST['auth_name']); $pass=mysql_real_escape_string($_POST['auth_pass']); $query = "SELECT * FROM users WHERE name='$name' AND pass='$pass'"; $res = mysql_query($query) or trigger_error(mysql_error().$query); if ($row = mysql_fetch_assoc($res)) { session_start(); $_SESSION['user_id'] = $row['id']; $_SESSION['ip'] = $_SERVER['REMOTE_ADDR']; } header("Location: http://".$_SERVER ['HTTP_HOST'].$_SERVER['REQUEST_URI']); exit; } if (isset($_GET['action']) AND $_GET['action']=="logout") { session_start(); session_destroy(); header("Location: http://".$_SERVER ['HTTP_HOST']."/"); exit; } if (isset($_REQUEST[session_name()])) session_start(); if (isset($_SESSION['user_id']) AND $_SESSION['ip'] == $_SERVER['REMOTE_ADDR']) return; else { ?> <form method="POST"> <input type="text" name="auth_name"><br> <input type="password" name="auth_pass"><br> <input type="submit"><br> </form> <? } exit; ?> теперь достаточно написать во всех защищаемых скриптах строчку require "auth.php"; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2014, 18:52 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Все записал в файл password.php и попробовал подключить к странице finindex.php. выдало такую ошибку Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\mobile\finindex.php:1) in Z:\home\localhost\www\mobile\password.php on line 13 Сохранил без BOM. Пробовал включить output_buffering в денвере. Никаких пробелов перед началом кода нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 06:52 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Оказалось что finindex.php был с BOM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 07:08 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Прописал так: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. при правильном вводе, все равно закидывает на страницу с паролем... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 07:24 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
PHucker, выполните "SELECT * FROM smplusers WHERE user_name='$name' AND user_password='$pass'"; в пхпадмине денвере заменяя на свои данные и вообще после каждой команды выводите echo с данными для отладки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 09:06 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
скорее всего в запросе нужно имена таблиц и полей заключать в кривые ковычки `` SELECT * FROM `smplusers` WHERE `user_name`='$name' AND `user_password`='$pass'" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 09:09 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
если команда echo конфликтует с сессиями, то можно писать вывод в текстовой файл и смотреть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 09:35 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Вот вариант, у меня работает, правда у меня он еще пишет лог с ип и именем юзера <? //Скрипт авторизации ред. 31.03.2014 if (isset($_POST['auth_name'])) { //Проверяем авторизацию require_once "phpsqlajax_dbinfo.php";//Данные для подключение к БД require_once "db.php"; //Проверяем подключение require_once "createlog.php"; //Подготавливаем лог для записи $name=mysql_escape_string($_POST['auth_name']); $ip = GetRealIp(); //Берем IP юзера //echo $ip; save_log($ip."-".$name); //Пишем в лог ип и имя $pass=mysql_escape_string($_POST['auth_pass']); $hash=md5($pass); $query = "SELECT login FROM users WHERE login='$name' AND password='$hash'"; $res = mysql_query($query) or trigger_error(mysql_error().$query); if ($row = mysql_fetch_assoc($res)) { session_start(); $_SESSION['authorized']="1"; } header("Location: /index.php"); //Переход на главную страницу exit; } else {session_start(); session_destroy(); ?> <h3>Авторизация</h3> <form method="POST"> <input type="text" name="auth_name"><br> <input type="password" name="auth_pass"><br> <input type="submit"><br> </form> <? } exit; ?> на других страницах в начале поставил <? session_start(); if (!$_SESSION['authorized']) { header("Location: /auth.php"); exit; } ?> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 09:47 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Dadont, В первую очередь поменял данные на свои. Поставил кривые кавычки результата нет. А можно доп файлы посмотреть? Такие как "phpsqlajax_dbinfo.php", "db.php"; "createlog.php. Если можно киньте с архивом сюда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 09:50 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
А что у вас находится в auth.php? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 09:53 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
auth.php это и есть скрипт, который я привел. phpsqlajax_dbinfo.php: <?php $username="root"; $password=""; $database="dbdata"; $host="localhost"; ?> db.php: <? $connection = mysql_connect ($host, $username, $password); if (!$connection) { die ('Нет подключения к БД: ' . mysql_error()); } // Выбираем активную БД. $db_selected = mysql_select_db($database, $connection); if (!$db_selected) { die ('Невозможно использовать БД : ' . mysql_error()); } ?> createlog.php: <? //Функция проверяет, есть ли таблица для лога, если нет то создает function mysql_table_seek($tablename, $database) { $rslt = mysql_query("SHOW TABLES FROM `{$database}` LIKE '" . mysql_real_escape_string(addCslashes($tablename, "\\%_")) . "';"); return mysql_num_rows($rslt) > 0; } $t = mysql_table_seek('logs', $database); if (!$t) { $l = mysql_query ("CREATE TABLE IF NOT EXISTS `logs` ( `Timestamp` varchar(19) DEFAULT NULL, `text` varchar(100) DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=cp1251;"); } function save_log($text) // Запись в лог { $t = "INSERT INTO `logs` (`Timestamp`,`text`) VALUES (SYSDATE( ), '".$text."');"; $l = mysql_query ($t); //echo $t; } function GetRealIp()//Определение ИП юзера { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip=$_SERVER['REMOTE_ADDR']; } return $ip; } ?> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 10:09 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Что-то не понял. Если без пароля войти он просто заходит. Вот что у меня получилось: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 10:38 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
А вы пробовали без пароля заходить?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 10:40 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
http://dadont.meximas.com попробуйте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 11:56 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Вы добавили в начало index.php <? session_start(); if (!$_SESSION['authorized']) { header("Location: /auth.php"); exit; } ?> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 11:58 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
DadontВы добавили в начало index.php <? session_start(); if (!$_SESSION['authorized']) { header("Location: /auth.php"); exit; } ?> да добавил. Но у меня даже без пароля заходит. А в примере какой пароль и логин? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:02 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
К сожалению это конфиденциальная информация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:06 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
За то я знаю Ваш IP ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:07 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
DadontЗа то я знаю Ваш IP Это вам благодарность от меня :D. Я не понимаю почему у меня без пароля даже заходит. Вроде все правильно написано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:15 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Мож у Вас несколько index.php? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:22 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
DadontМож у Вас несколько index.php? Только один такой есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:32 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Посмотрите в каталоге tmp создается там файл с сессией со строкой autorized? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:52 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
DadontПосмотрите в каталоге tmp создается там файл с сессией со строкой autorized? нет, не создается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:56 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
Он создается, если пароль и логин правильный, потом по этой сессии и идет проверка. Следовательно, если его нет, проверка не пройдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 12:58 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
скиньте мне на ящик dadont@mail.ru свои файлики или разместите например на hostinger.ru, а то всю тему замусорили ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 13:02 |
|
||
|
Пароль на PHP страницу.
|
|||
|---|---|---|---|
|
#18+
сейчас скину ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2014, 13:07 |
|
||
|
|

start [/forum/topic.php?all=1&fid=22&tid=1446510]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
83ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 243ms |
| total: | 445ms |

| 0 / 0 |
