PHP.SU

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

Страниц (1): [1]

> Найдено сообщений: 9
Yappa Отправлено: 07 Июня, 2008 - 11:52:23 • Тема: Несколько простых вопросов! • Форум: Программирование на PHP

Ответов: 2
Просмотров: 258
Спасибо, EuGen!
Буду думать ^^
Yappa Отправлено: 07 Июня, 2008 - 10:38:45 • Тема: Несколько простых вопросов! • Форум: Программирование на PHP

Ответов: 2
Просмотров: 258
Привет! Я только начинаю активно ковырять пхп, и черпаю информацию , в основном, из всяких примеров в сети. Так вот, многие штуки там делаются совершенно по разному -_-
Подскажите как правильней!

1) Сейчас мои страницки представляют собой большуую мешанину пхп и хтмл кода... Хочу вынести оформление в шаблончики. Мне не нужны особые гипервозможности, хотелось бы просто визуально очистить код ^^

Итак вопрос - допустим у меня есть табличка, строки которой заполняет скрипт.
например я могу написать файлик с шапкой и типовой строчкой.
пусть например типовая строка выглядит так:

CODE (text):
скопировать код в буфер обмена
  1. <tr><td>порода</td><td>длинна хвоста</td></tr>


табличка может получиться очень длинной, шаблон придется использовать часто, и в связи с этим вопрос - как лучше делать?

я могу сделать файлик, в нем написать что-то вроде

CODE (text):
скопировать код в буфер обмена
  1. <tr><td><?php echo $row['cat_type']; ?></td><td><?php echo $row['tail_len']; ?></td></tr>


и делать ему include для каждой строчки. это просто и красиво ) Но не будет ли это тяжело для сервера - тучу раз читать заного этот бедный файлик?

или я могу написать там чтото вроде

CODE (text):
скопировать код в буфер обмена
  1. <tr><td>{cat_type}</td><td>{tail_len}</td></tr>


читать этот файл перед началом вывода в переменную, и делать стр_реплейс..
вот только мне кажется что поиск с заменой тоже достаточно напряжен...

я вижу еще один вариантик - делать шаблон как первый ( с выводом на пхп ),а в начале файла самой страницы написать чтото такого рода

CODE (text):
скопировать код в буфер обмена
  1. function print_me($aWhat,$row){
  2. switch($aWhat){
  3.    case "neko_row":
  4.     require_once('neko_row.php');
  5.     break;
  6.  
  7. ну и тд, тоесть заранее включить все оформление в код...
  8.  



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

Как лучше? Или это вообще все бред? Y^^

2) Мускульь!!! Вопрос, наверное, самый заезженный но всеже:
из формы пришла строка которую надо засунуть в базу.
что с ней сделать, чтобы она точно была безопасна?
Я видела несколько вариантов:
htmlspecialchars потом обрезание.
обрезанние а потом mysql_real_escape_string
htmlspecialchars потом обрезание а потом mysql_real_escape_string
Как правильнее-то? я пока не очень понимаю какие именно символы позволяют сделать иньекцию -_-


3) И еще вопросиик! Допустим мя сделала-таки шаблончики для оформленния... а как их правильнее хранить, чтобы любопытные не смотрели как там и что?
положить в специальную папку, и хтаккессом запретить туда заходить?
или дать на них разрешения особые?
или в каждом проверять сессию? (бреед)))
или хранить их в папке недоступной для веб сервера?

Написано наверно сумбурно, но все-таки, помогите разобраться пожалуйста!
Yappa Отправлено: 06 Июня, 2008 - 12:09:50 • Тема: Преобразование хтмл файла • Форум: Программирование на PHP

Ответов: 6
Просмотров: 298
вопрос решен, спасибо )
Yappa Отправлено: 05 Июня, 2008 - 09:50:27 • Тема: Доступ к закрытой директории без авторизации для определенных IP • Форум: Apache и другие веб-серверы

Ответов: 3
Просмотров: 348
Проверила - так и есть )
Ищу решение дальше )
Yappa Отправлено: 05 Июня, 2008 - 09:30:32 • Тема: Преобразование хтмл файла • Форум: Программирование на PHP

Ответов: 6
Просмотров: 298
valenok пишет:
И тебе нужно из варианта А получиьт вариант Б ?

В первй строке всегда поле ОТ
во второй строке всегда КОМУ и т.д. ?


Да да! Именно так!

valenok пишет:
Только если хотябы помечаться будут <td id='from'>..</td>


Как я уже писала, "2) файл генерируется абсолютно сторонней программой, тоесть при создании в нем нельзя поставить никаких "меточек" для упрощения разбора.." -_-

scuter пишет:
можно через регулярное выражение,
я как то раз это делал так.
'|<tr[^>]*>(.*)</tr>|siU


А у вас не осталось кусочка кода разбора? ^_^
Yappa Отправлено: 04 Июня, 2008 - 17:12:46 • Тема: Преобразование хтмл файла • Форум: Программирование на PHP

Ответов: 6
Просмотров: 298
valenok пишет:
Вам пожоже везде нужно просто заменить
{from} на какуюто другую запись.
str_replace


нет нет нет, это я просто обозначила, что в данной ячейке будет некое значение которое означает "от".

Файл не шаблон - он уже с данными.
Yappa Отправлено: 04 Июня, 2008 - 16:22:00 • Тема: Доступ к закрытой директории без авторизации для определенных IP • Форум: Apache и другие веб-серверы

Ответов: 3
Просмотров: 348
valenok пишет:
order deny,allow
deny from all
allow from 195.135.232.70


Нуу, я попробую вечером... Пасиб!
Но насколько я поняла, это будет просто разрешение заходить только с определенных адресов!
А мне нужно просто чтобы одним шел запрос пароля, а другим нет )
Yappa Отправлено: 04 Июня, 2008 - 16:14:57 • Тема: Преобразование хтмл файла • Форум: Программирование на PHP

Ответов: 6
Просмотров: 298
Привет!
У меня есть такая задача:
1) пользователь загружает на сервер хтмл файл. (это понятно как делать)
2) пхп скрипт читает загруженный файл, изменяет его и выводит измененную версию.

Загружаемый файл кроме "шапки" пары вступлений и тд содержит в себе табличку.
Необходимо некоторые столбцы таблицы удалить вообще, содержимое определенных ячеек преобразить и тп. а пользователю показать уже мое оформление и измененную под мой вкус таблицу..

к примеру исходный вид одной строки исходной таблички такой:
(в ячейках таблицы какие-то данные, в скобках я просто обозвала их чтобы показаь что с ними потом делать)
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <tr>
  3.     <td>{from}</td>
  4.     <td>{to}</td>
  5.     <td>{nyo}</td>
  6.     <td>{nyo?!}</td>
  7.   </tr>


а моя табличка должна содержать чтото вроде
CODE (text):
скопировать код в буфер обмена
  1. <tr>
  2.     <td>{from}.{хитрые штуки}</td>
  3.     <td>{to}</td>
  4.     <td>{nyo}*28-42.{desu}</td>
  5.     <td>картинка</td>
  6.     <td>вообще новые данные</td>
  7.     <td>и чтото вроде {nyo?!}{to}{from}</td>
  8.   </tr>


как это лучше делать если:
1) таблица может содержать и 40 и 40000 строк - предугадать нельзя ) Такчто сразу грузить файл в массив или читать целиком нельзя.
2) файл генерируется абсолютно сторонней программой, тоесть при создании в нем нельзя поставить никаких "меточек" для упрощения разбора..
3) Страница всегда разная по содержанию, но одинакова по структуре.
4) переносы строки в файле (не <БР> а в коде) могут быть вразброс.
5) до таблицы есть некоторые нужные мне данные! их тоже надо выдрать
трудность собственно в том - как определить где в файле что написано и убедиться что у меня в руках цельная строка таблицы и ее можно править )

Как это дело парсить? как я представляю это :
нахожу в теле <body>, дальше ищу элементы обрамленными известными мне тегами и "на веру" принимаю их последовательно как нужные мне элементы..
Можно составить большое регексп выражение и читать файл по символу "примеривая" к шаблону прочитанное - а как совпадет - разбирать.. далее искать следующий кусок и тп... но схема подобной штуки для меня представляется уж больно сложновато...

Какие есть другие подходы? Или может какая-нить готовая технология существует? )
Yappa Отправлено: 04 Июня, 2008 - 10:38:26 • Тема: Доступ к закрытой директории без авторизации для определенных IP • Форум: Apache и другие веб-серверы

Ответов: 3
Просмотров: 348
Привет!

У меня есть такая штука:

<Directory "/var/neko/koneko/nekokoneko/nyo">
AllowOverride None
AuthType Basic
AuthName "neko"
AuthUserFile /var/neko/koneko/nekokoneko/nyo/ .htpasswd
Order allow,deny
Allow from all
Require valid-user
</Directory>

Работает отлично.. Но теперь я хочу сделать так, чтобы для тех кто заходит ,например, с адресов 192.168.22.1 и 192.168.1.233 пароль не запрашивался, а для всех остальных остался..

как? -_-

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB