• Авторизация


№5 кодинг 20-07-2006 17:45 к комментариям - к полной версии - понравилось!


чтото дневник не соотвествует названию)
за год наверное ни одного поста о специализации автора)
исправляюсь))

О преимуществе необратимого шифрования.
md5 рулит и ниипет))
Задача: в базе есть список исполнителей... но он сделан не отдельной таблицей в 3НФ, а вбит в общий список всех песен. Надо сделать группировку по исполнителям (это просто) и потом при выборе конкретного аффтара, выбрать все песни ему соответствующие.
Проблема осложняется тем, что это все сделано не в web, а в wap-сайте, где надо ограничивать хоть как нибудь длину ссылки (хотя может и не надо, но я решил ограничить :).
Вначале думал извращатся и делать pack/unpack внутри скрипта РНР.
Как оказалось все просто.
Итак.
Выбираем исполнителей. Делам запрос к мусклу.
select c1.Artist as artist, md5(c1.Artist) as md5a from contentinfo as c1 left join codes as c2 on c1.NameObj=c2.NameObj

делаем шаблон на Сматри

{if $cur_mode=='artist_select'}

<p align="center"><b>Выберите исполнителя</b></p>

{foreach from=$_artist_list item=V key=K}

<a href="./{$V.md5a}/{URI}">{$V.artist}</a><br/>

{foreachelse}

<p align="center"><font color="#FF0000">Извините, список пуст</font></p>

{/foreach}

{/if}

получаем ссылки вида

<a href="./fc7221de5311b9b68355d97f67ad8a9e/?pid=84&amp;mid=4">т/п Спокойной ночи малыши</a>

<a href="./e45d373f51fb986e28455820e3577fe3/?pid=84&amp;mid=4">м/ф Мама для мамонтенка</a>

<a href="./fb2c57f39b481fb74711b7e0e24270a0/?pid=84&amp;mid=4">м/ф Крошка Енот</a>

<a href="./12ea423135b139b7a2abb3d2b6e63b2f/?pid=84&amp;mid=4">м/ф Крокодил Гена и Чебурашка</a>

<a href="./6c8ac21326c96fd2f2663a7fab6b3f01/?pid=84&amp;mid=4">к/ф Белое солнце пустыни</a>


А далее выбираем все песни текущего исполнителя. Опять таки скулем.
select c1.* from contentinfo as c1 left join codes as c2 on c1.NameObj=c2.NameObj where md5(c1.artist)='$_current_artist'

аж самому понравилось :)

но это все на самом деле мелочи))

LI 5.09.15
вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник №5 кодинг | Гриня - /* Записки программиста */ | Лента друзей Гриня / Полная версия Добавить в друзья Страницы: раньше»