Посоветуйте, как правильно сделать (теория без кода).

Лисю

Guest
Посоветуйте, как правильно сделать (теория без кода).

Вот, смотроите: имеем сценарий в админке, клоторый выводит список пользователей, сортировку, имеет возможности поиска.

Почти то-же самое нужно сделать и в публичном сайте.

Как бы по максимуму добиться того, что бы не повторять код и в том и в том сценарии? А то получается почти одно и то-же, но это одно и то же я 2 раза переписываю, одни и те же запросы.

Или не пытаться настолько сократить эти два функционала?
 

dvp

Новичок
Да было бы там чего сокращать.

Хотя конечно можно засунуть этот код в какую-нить функцию типа.
PHP:
function GetUsersHTML($DBConnId, $templateFileName) { ... }
 

Кром

Новичок
>Посоветуйте, как правильно сделать (теория без кода).

У тебя объектный подход?
 

Лисю

Guest
объектный толлько для работы с БД и отстраничивателей.
 

Кром

Новичок
Тогда общий принцип такой. Функции работы с базой выносишь наверх и подключаешь их в обоих случаях (backoffice,frontoffice). И сами эти функции вызываешь уже из функций вывода. Функции вывода лучше делать отдельно.
 

konstantin_18

Guest
если разница только в выводе, тогда Smarty
 

Лисю

Guest
Вот код - посмотрите, как это можно упростить и более хорошо скомпановать, улучшить и т.д.
 

SiMM

Новичок
PHP:
header("Location: $_SERVER[HTTP_REFERER]");
Забудьте раз и на всегда об обязательном существовании заголовка Referer.
PHP:
foreach (array('sort'=>'user_id','ad'=>'DESC','col'=>'user_name','search'=>'','user_active'=>'') as $k=>$v)
  if (!isset($_GET[$k]) $_GET[$k] = $v;
В остальном же составляемые SQL-запросы ($sql_like) подвержены SQL-injection.
 

Лисю

Guest
SiMM
это админ-интерфейс. Почему забыть об HTTP_REFERER?

-~{}~ 14.09.05 09:51:

хороший пример с foreach :)
 

kvf77

Red Devil
Лисю

потому что его МОЖЕТ НЕ БЫТЬ - какая разница какой интерфейс. Режут его обычно Firewall, например, Norton Internet Security, и многие другие. А Значит и надеяться на его наличие не стоит.
 

Лисю

Guest
как же быть? таскать за собой переменную хранящую в себе этот самый реферер и перебрасывать на значение этой переменной?
 

SiMM

Новичок
> это админ-интерфейс.
Это не повод. Хотя для "на коленке", наверно, сойдёт.
В любом случае выражение для LIKE формируется несколько неправильно - искать, к примеру, последовательность '%%%%%' или же '_______' практически бесполезно и бессмысленно.
PHP FAQ: \"Кавычки \". Замечания
 
Сверху