Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 615
от 20.03.2007, 02:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 405, Экспертов: 52
В номере:Вопросов: 3, Ответов: 9


Вопрос № 78201: Добрый день эксперты!! вопрос такого плана. Никак не пойму как поставить права доступа на файл php, dat? Допустим необходимо поставить права доступа 755-как это сделать через ТоталКомандер??? Пожалуйста подробно! Заранее спасибо!...
Вопрос № 78331: Добрый день! Помогите разобраться. Мне нужно, чтобы программа умела фильтровать данные, вводимые в форму. Например, вела проверку на символы, допуская ввод только числовых значений. Как это реализовать?...
Вопрос № 78332: Добрый день, эксперты! У меня такой вопрос: возможно-ли получить доступ к массиву $_SESSION (просмотр/изменение) непосредственно из броузера. В настройках php указал: register_globals = Off. Этого достаточно, или надо еще на что-то обрат...

Вопрос № 78.201
Добрый день эксперты!!
вопрос такого плана. Никак не пойму как поставить права доступа на файл php, dat? Допустим необходимо поставить права доступа 755-как это сделать через ТоталКомандер??? Пожалуйста подробно!
Заранее спасибо!
Отправлен: 14.03.2007, 09:05
Вопрос задал: С. Дмитрий (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Королёв Руслан
Здравствуйте, С. Дмитрий!
Если я правильно понял вопрос, то в тотал командере выбираете нужный фаил, в меню Файлы выбираете Изменить атрибуты.. и выставляете доступ.
Ответ отправил: Королёв Руслан (статус: 4-ый класс)
Ответ отправлен: 14.03.2007, 09:34

Отвечает: Zolton007
Здравствуйте, С. Дмитрий!

При помощи TotalCommander я лично проделал это только что в первый раз, так что извиняйте, если что не так: (это не на ftp)
1) Выбираем файл
2) Сеть -> Изменение прав доступа (NTFS)
3) Появляются существующие группы и пользователи, при выделении которых в выпадающем списке снизу (combobox) можно выбрать ТИП ДОСТУПА.
4) Жмем ОК

(а это уже на ftp сервере):
Подключившись к серверу ftp, выделим нужный файл, каталог или сразу целую группу объектов. Теперь идём в меню "Файл" и выберем пункт "Изменить атибуты".
В появившемся окне можно расставить галочки, а можно задать права в цифровой форме. (как в *nix системах)
Кроме этого можно вручную ввести команду chmod в командной строке ftp-клиента:
chmod 755 file.php


---------
Если твоя программа выполняет мистические действия, - значит ты сделал что-то невероятно тупое!
Ответ отправил: Zolton007 (статус: 6-ой класс)
Ответ отправлен: 14.03.2007, 13:05

Отвечает: Илья Андреевич
Здравствуйте, С. Дмитрий!
Если у вас сервер под виндовсом, то там немного другое. там в свойствах файла есть атрибуты "архивный", "только чтение", "системный", "скрытый".
а нумирации там нет.
А если же надо поставиь права доступа на удаленном сервере (на фтп, иначе говоря), то пользуйтесь командой chmod [file] [#mod]
Ответ отправил: Илья Андреевич (статус: Студент)
Ответ отправлен: 14.03.2007, 14:05

Отвечает: Mamanton
Здравствуйте, С. Дмитрий!
Если вы локально пытаетесь изменить права с помощью Total Commander у вас по определению ничего не получится, потому что эти пермишены (755) являются правами семейства Unix, а не Windows
Если вы пытаетесь изменить права на сервере, зайдя на него по ftp протоколу, то попробуйте через меню Файл-Изменить атрибуты (Alt+A)
Ответ отправил: Mamanton (статус: 1-ый класс)
Ответ отправлен: 15.03.2007, 22:15


Вопрос № 78.331
Добрый день!

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

Как это реализовать?
Отправлен: 14.03.2007, 23:44
Вопрос задал: Демьянчук Виталий (статус: Студент)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Zolton007
Здравствуйте, Демьянчук Виталий!
1) Существуют строковые функции. (но вот задачу вроде написаной Вами они уже не решат, зато могут решить целый ряд других задач обработки входных даных)
2) (то, что, вероятно, нужно Вам): Регулярные выражения POSIX или PCRE (рекомендую).
Поскольку существут целые книги, посященные регулярным выражениям, вкрадце я тут их описать не могу. Извиняйте. Помогу Вам ссылкой: http://www.pcre.ru/

УДАЧИ! BYE! :)

---------
Если твоя программа выполняет мистические действия, - значит ты сделал что-то невероятно тупое!
Ответ отправил: Zolton007 (статус: 6-ой класс)
Ответ отправлен: 14.03.2007, 23:59

Отвечает: Устинов Сергей Евгеньевич
Здравствуйте, Демьянчук Виталий!

Если необходимо проверить переменную $login:

if (!preg_match("/^[A-Za-z0-9_]*$/i",$login))
{echo "Логин должен состоять только из латинских букв, цифр и знака подчеркивания!";}

Соответственно если нужен ввод только цифр -
if (!preg_match("/^[0-9]*$/i",$login)) {echo "Разрешен ввод только цифр.";}

Более подробно о регулярных выражениях можно почитать, например в книге:
Фридл. Регулярные выражения. - книга действительно очень полезная.

Удачи!
---------
Ждешь квалифицированного ответа? Задай правильно вопрос!
Ответ отправил: Устинов Сергей Евгеньевич (статус: Практикант)
Ответ отправлен: 15.03.2007, 00:03
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо

Отвечает: Nexus
Здравствуйте, Демьянчук Виталий!

Для простых проверок можно использовать ф-ции типа is_numeric($_POST['field_name']) и т.д. Для более сложных - регулярные выражения (см. ф-цию preg_match()). На phpclub.ru была довольно неплохая статья по регуляркам, та и вообще в инете их довольно много.

Кроме того часто удобно пользоваться специальными классами для генерации и валидации форм. Я пользуюсь PEARовским HTML_QuickForm (http://pear.php.net/package/HTML_QuickForm). Правда мануал у них не очень понятный, так что для начала лучше поискать в инете статьи, а потом когда разберешься как это работает лезть в мануал. У меня есть пара статей, но откуда я их слил не помню, если есть желание напиши на мыло (mail[at]nexus.in.ua), пришлю. На мой взгляд класс очень удобный, но если раньше писал формы ручками - нужно привыкнуть))
Ответ отправил: Nexus (статус: 5-ый класс)
Ответ отправлен: 15.03.2007, 00:07

Отвечает: Mamanton
Здравствуйте, Демьянчук Виталий!
Если вы хотите проверять именно на этапе ввода, тогда вам поможет javascript.
Ответ отправил: Mamanton (статус: 1-ый класс)
Ответ отправлен: 15.03.2007, 22:06
Оценка за ответ: 3
Комментарий оценки:
Я знаю, что в JS можно реализовать, но мне нужно на PHP


Вопрос № 78.332
Добрый день, эксперты!
У меня такой вопрос: возможно-ли получить доступ к массиву $_SESSION (просмотр/изменение) непосредственно из броузера.
В настройках php указал: register_globals = Off.
Этого достаточно, или надо еще на что-то обратить внимание?
И вообще, какие шаги предпринять для "взломоустойчивости" сайта?
Может подскажите, какую инфу и где почитать можно на эту тему (на русском языке).
Отправлен: 14.03.2007, 23:51
Вопрос задал: Valery-76 (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Zolton007
Здравствуйте, Valery-76!
Массив $_SESSION хранится на сервере. Непосредственно из браузера к нему доступ получить нельзя. 1 способ - получить несанкционированный доступ к серверу (это я "образно"). Вообще говоря, register_globals = On тоже не позволит получить доступ к $_SESSION. register_globals выключают, т.к. недобросовестные програмисты пишут просто $var вместо $_POST["var"] (если Вы меня поняли ;)) в результате чего получаются неустойчивые к взлому скрипты.
По безопасности можно много чего сказать, но лучше (как Вы сказали) почитать.
Для начала советую http://phpclub.ru/detail/ (там есть раздел "Вопросы безопасности").
---------
Если твоя программа выполняет мистические действия, - значит ты сделал что-то невероятно тупое!
Ответ отправил: Zolton007 (статус: 6-ой класс)
Ответ отправлен: 15.03.2007, 00:10


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
ООО "Мастер-Эксперт Про", Москва, 2007
Авторские права | Реклама на портале
Версия системы: 4.46 от 18.03.2007
Яндекс Rambler's Top100

В избранное