Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
13.03.2005 - 22:08
Вставить ник | Быстрая цитата | Сообщение
#221
|
|
Звезда форума![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1510 Регистрация: 29.09.2003 Пользователь №: 92 |
$preg_host = "/(10|80)\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/";
кажется так строка запроса будет выглядеть |
|
|
|
14.03.2005 - 15:06
Вставить ник | Быстрая цитата | Сообщение
#222
|
||
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 997 Регистрация: 8.10.2003 Пользователь №: 353 |
Цитата(mani13 @ 13.03.2005 - 22:57) я думаю, что в самоучителе наверно что-то и есть про разделители? если нет, то выкинь самоучитель...
]]>http://detail.phpclub.ru/]]> - регулярные выражения[/quote] есть, но объяснили очень не понятно и не доходчиво. Нашёл на сайте, что ты дал выше, подучу. Цитата(GreyWind @ 13.03.2005 - 23:08) $preg_host = "/(10|80)\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/"; кажется так строка запроса будет выглядеть спасибо. NIK добавил(а) в нет данных Задача. Хочу сделать админку к своему "скриптику" (те кто следил за темой поймут Как такие задачи решаются? Мб кто знает "классический" пример? |
|
|
|
||
14.03.2005 - 15:48
Вставить ник | Быстрая цитата | Сообщение
#223
|
|
Звезда форума![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1510 Регистрация: 29.09.2003 Пользователь №: 92 |
хз насчёт классического примера, меня как-то не учили пограммировать, как умею так и делаю... если хранить в файле, то вообще не совсем уж и лёгко узнать, особенно если голова на плечах есть... просто путём редактирования .htaccess запрещаем всем файл на скачку, просмотр и т.д. тут уж надо сервер на сколько я понимаю ломать чтобы файл посмотреть+надо знать что этот файл там есть, а если по-хорошему так опция листинга директории должна отключена быть всегда. В добавок, можно хранить не сам пароль, а его хэш, тут можно заюзать md5 (); тут уж совсем маловероятно что кто-то его достанет
Сообщение отредактировано GreyWind - 14.03.2005 - 15:49 |
|
|
|
14.03.2005 - 17:56
Вставить ник | Быстрая цитата | Сообщение
#224
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 997 Регистрация: 8.10.2003 Пользователь №: 353 |
Цитата(GreyWind @ 14.03.2005 - 16:48) хз насчёт классического примера, меня как-то не учили пограммировать, как умею так и делаю... если хранить в файле, то вообще не совсем уж и лёгко узнать, особенно если голова на плечах есть... просто путём редактирования .htaccess запрещаем всем файл на скачку, просмотр и т.д. тут уж надо сервер на сколько я понимаю ломать чтобы файл посмотреть+надо знать что этот файл там есть, а если по-хорошему так опция листинга директории должна отключена быть всегда. В добавок, можно хранить не сам пароль, а его хэш, тут можно заюзать md5 (); тут уж совсем маловероятно что кто-то его достанет хм.. ну, про файлы .htaccess я поверхностно понимаю, для чего они нужны. Ну а про кеш вообще ничего. Мб кто знает где прочитать о работе с такими файлами (.htaccess)? Я посмотрел в скриптах, где есть такие файлики, там вроде не сложно, что-то типа "deny from all" - т.е. запретить доступ ко всем файлам, которые находятся в этом каталоге? Но хотелось бы узнать подробнее. А как и ГДЕ отключить функцию листинг директорий? |
|
|
|
14.03.2005 - 18:00
Вставить ник | Быстрая цитата | Сообщение
#225
|
|
El hincha del Real Madrid![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 14104 Регистрация: 17.02.2004 Пользователь №: 2321 |
Цитата(NIK @ 14.03.2005 - 17:56) хм.. ну, про файлы .htaccess я поверхностно понимаю, для чего они нужны. Ну а про кеш вообще ничего. Мб кто знает где прочитать о работе с такими файлами (.htaccess)? Я посмотрел в скриптах, где есть такие файлики, там вроде не сложно, что-то типа "deny from all" - т.е. запретить доступ ко всем файлам, которые находятся в этом каталоге? Но хотелось бы узнать подробнее. А как и ГДЕ отключить функцию листинг директорий? Не кеш, а хеш. Это что-то вроде шифрования. Читать здесь: ]]>http://www.wmaster.ru/htaccess/]]> Где отключать - не помню. В настройках сервера где-то. |
|
|
|
| Guest_TeXник_* |
14.03.2005 - 18:18
| Быстрая цитата | Сообщение
#226
|
|
Гости |
хранить в БД md5 от пароля и сравнивать md5. так делается почти везде
boris добавил(а) в нет данных функция листнга директорий меняется в httpd.conf - directory далее ищи в мануалах или методом перебора. короче, лично я не помню, как это делал, просто конфиг, который я себе делал год-подтора назад я с тех пор почти не изменял |
|
|
|
14.03.2005 - 18:23
Вставить ник | Быстрая цитата | Сообщение
#227
|
|
Звезда форума![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1510 Регистрация: 29.09.2003 Пользователь №: 92 |
Цитата(http://www.wmaster.ru/htaccess/) Как поставить запрет на отображение содержимого директории при отсутствии индексного файла? Предположим, что у вас вся графика, используемая на сайте находится в директории img. Посетитель может набрать в адресной строке браузера эту директорию и увидеть список всех ваших графических файлов. Конечно, это не нанесет вам урона, но можно и не дать такого просмотра посетителю. В .htaccess пишем: Код Options -Indexes что-то анологичное должно быть и в httpd.conf Сообщение отредактировано GreyWind - 14.03.2005 - 18:25 |
|
|
|
14.03.2005 - 20:28
Вставить ник | Быстрая цитата | Сообщение
#228
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 997 Регистрация: 8.10.2003 Пользователь №: 353 |
ладно, с паролем разобрался весьмя извращённым способом. Как нибудь куплю книжонку про web-приложения, мб модифицирую.
Создаём файл с форомой, где проверяется пароль и имя (entadmin.php). Сам пароль находится в файле config.php. Его фрагмент: Код $admin_name = "******"; $admin_pass = "******"; Код файла entadmin.php: Код <html> <head> <title></title> </head> <body> <form action="entadmin.php" method="post"> <b>Введите имя:</b> <br> <INPUT CLASS="input" type="text" name="adm_name"><br> <b>Введите пароль:</b><br> <INPUT CLASS="input" type="password" name="adm_pass"><br> <INPUT CLASS="submit" type="submit" value="Войти"> <br> </form> <?php include "config.php"; $form_pass = $_POST['adm_pass']; $form_name = $_POST['adm_name']; if ($admin_pass = $form_pass || $admin_name = $form_name) { print "Пароль принят"; /* теперь, сдесь нужно организовать переход на саму страницу администратирования [B]admin.php[/B] */ } else { print "Не верен пароль. Попробуйте ещё раз!"; } ?> </body> </html> Файл config.php защищён файлом htaccess, его содержание: Код <Files config.php> order allow,deny deny from all </Files> Вроде работает, если что не так, очень прош, говорите. Теперь интересует вопрос о переходе на страницу admin.php. Помнится я как-то делал, а вот сейчас забыл. Мб кто напомнит? Спасибо. |
|
|
|
14.03.2005 - 20:32
Вставить ник | Быстрая цитата | Сообщение
#229
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 248 Регистрация: 29.11.2004 Пользователь №: 5564 |
ам... почему в if условие "или"?? или я ошибаюсь...
ЗЫ: имхо, лучше делать в массиве пароли $pass['vasya'] = "*****"; $pass['petya'] = "*****"; а при проверке $form_pass == $pass[$name]... |
|
|
|
14.03.2005 - 20:42
Вставить ник | Быстрая цитата | Сообщение
#230
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 997 Регистрация: 8.10.2003 Пользователь №: 353 |
Цитата([BlockDog].DaMN @ 14.03.2005 - 21:32) ам... почему в if условие "или"?? или я ошибаюсь... ЗЫ: имхо, лучше делать в массиве пароли $pass['vasya'] = "*****"; $pass['petya'] = "*****"; а при проверке $form_pass == $pass[$name]... нет, ошибка моя. Имел ввиду AND. Спасибо что подметил. А можно объяснить, почему лучше делать в массиве? Я приемущества невижу |
|
|
|
| Guest_TeXник_* |
14.03.2005 - 21:12
| Быстрая цитата | Сообщение
#231
|
|
Гости |
Цитата Теперь интересует вопрос о переходе на страницу admin.php. Помнится я как-то делал, а вот сейчас забыл. Мб кто напомнит? Спасибо. header("location:admin.php"); - тока код с этним толжен стоять до любой отправки данных |
|
|
|
14.03.2005 - 21:14
Вставить ник | Быстрая цитата | Сообщение
#232
|
|
El hincha del Real Madrid![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 14104 Регистрация: 17.02.2004 Пользователь №: 2321 |
Цитата(boris @ 14.03.2005 - 21:12) header("location:admin.php"); - тока код с этним толжен стоять до любой отправки данных Если какие-нибудь данные отправлены, можно воспользоваться java script: Код <script LANGUAGE="JavaScript"> window.location.href = "admin.php"; </SCRIPT> Вроде так. |
|
|
|
| Guest_TeXник_* |
14.03.2005 - 21:16
| Быстрая цитата | Сообщение
#233
|
|
Гости |
как-то бредово у тебя код построен - он ведь при первом заходе на страницу тоже напишет, что пароль неверен? хотя я его даже ещё не вводил.
+ ещё способ - поиск по форуму со строкой meta content = refresh - чё то в таком духе boris добавил(а) в нет данных (устроит редирект через заданное кол-во секунд) |
|
|
|
14.03.2005 - 21:45
Вставить ник | Быстрая цитата | Сообщение
#234
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 997 Регистрация: 8.10.2003 Пользователь №: 353 |
да, хреново. Сам скрипт работает, если пароль верный - пускает. Если нет - не пускает. Сообщение, что пароль не верный появляется всегда. Хотя почему, незнаю
|
|
|
|
| Guest_IFL_* |
14.03.2005 - 22:06
| Быстрая цитата | Сообщение
#235
|
|
Гости |
Цитата(NIK @ 14.03.2005 - 21:45) да, хреново. Сам скрипт работает, если пароль верный - пускает. Если нет - не пускает. Сообщение, что пароль не верный появляется всегда. Хотя почему, незнаю при первой загрузке скрипта переменные логина пароля пустые, соответственно отрабатывает else... и вообще там должно 2 нотиса выскакивать p.s.: точнее не пустые, а неопределены Сообщение отредактировано mani13 - 14.03.2005 - 22:10 |
|
|
|
15.03.2005 - 10:25
Вставить ник | Быстрая цитата | Сообщение
#236
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 248 Регистрация: 29.11.2004 Пользователь №: 5564 |
пиши так:
PHP <?PHP if (!isset($admin_pass)) { // форма } elseif ($admin_pass = $form_pass && $admin_name = $form_name) { // редирект } else { // сообщение об ошибке + форма }; ?> при таком написании можно нормально юзать header("Location: admin.php"); только естественно ничего перед этим не выводя в броузер, т.е. до if не должно ничего вообще выводиться, даже теги <html>.. хранить пароли в массиве лучше, т.к. легко добавить нового пользователя, проверка одна, четкое соответствие логина и пароля... и сразу хочу сказать следующее.. надо обязательно как-то проверять пользователя во всех скриптах.. способов масса... открывать сессию и таскать ее идентификатор... разрешить только инклудить скрипты и запретить открывать их напрямую.. можно вообще сделать, как в форуме phpBB, там очень грамотно все.. Код if (!defined('IN_PHPBB')) { die("Hacking attempt"); } я лично давно положил на это и в не очень замороченных проектах использую стандартную http авторизацию... Сообщение отредактировано [BlockDog].DaMN - 15.03.2005 - 13:26 |
|
|
|
15.03.2005 - 17:34
Вставить ник | Быстрая цитата | Сообщение
#237
|
|
![]() Продвинутый новичок ![]() ![]() Группа: Участник Сообщений: 18 Регистрация: 14.11.2003 Пользователь №: 934 |
незнаю был этот вопрос уже или нет, т.к. всё читать нету времени... так вот
я начал изучать php и тут в самом начале трабл я пишу код в home site сохраняю файл как php. в итоге интернет эксплорер его не открывает.... код: <html> <head> <title>Bob's Auto Parts - Order Results</title> </head> <body> <hl>Bob's Auto Parts</hl> <h2>Order Results</h2> <? echo "<p>Order processed.</p>"; ?> </body> </html> Сам хом выводит мне: Bob's Auto Parts Order Results я вот не понимаю куда деваеться order processed который он должен вывести... Кто может помогите чайнику Сообщение отредактировано HaCoc-ZacoC - 15.03.2005 - 17:35 |
|
|
|
| Guest_TeXник_* |
15.03.2005 - 17:37
| Быстрая цитата | Сообщение
#238
|
|
Гости |
подсказка - а ты не пробовал себе сервер поставить? например apache? в этом разделе кстати всё подробно написано
|
|
|
|
15.03.2005 - 17:44
Вставить ник | Быстрая цитата | Сообщение
#239
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 248 Регистрация: 29.11.2004 Пользователь №: 5564 |
Цитата(HaCoc-ZacoC @ 15.03.2005 - 17:34) незнаю был этот вопрос уже или нет, т.к. всё читать нету времени... личный совет.. найди время... |
|
|
|
15.03.2005 - 18:46
Вставить ник | Быстрая цитата | Сообщение
#240
|
|
![]() Постоялец форума ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 997 Регистрация: 8.10.2003 Пользователь №: 353 |
а вот у меня такой вопрос. Задача - нужно определить средствами PHP, откуда пришёл посетитель. К примеру, если с страницы lala.php, вывести ссылку типа Назад. Если никак кроме определения рефереров, то желательно ссылку на обзор. Т.к. в том же самоучителе эти рефереры описываются в слишком замороченном виде с непонятными мне наворотами. Я думаю тут есть способ полегче. Спсибо.
|
|
|
|
![]() ![]() |
|
Текстовая версия | Сейчас: 18.12.2025 - 00:59 |