PHP функция в MySQL запросе

Печать RSS
534

A

Пришелец
0
Аварский (7 Октября 2013 / 06:25)
бб. Не повторяй, предлагали же уже.

Автор, че то мне кажется, что ты совсем не то делаешь. Может просветишь нас тому, что ты собираешься делать, что и как ты хочешь вывести.

А другого правильного варианта нет. Если мы что-то конвертировали с помощью своей же функции, то мы можем это вернуть в исходное состояние.

Можно конечно сделать в точности как хочет автор, но это будет не правильно.
Автор
Пишу, строю и воображаю
0
Объясняю. Ссылка выглядит: domen.ru/obzori-i-novosti/privet-skazal-on-a-on-otvetil-horosho

А на странице PHP я беру последнюю часть ссылки, то есть "privet-skazal-on-a-on-otvetil-horosho" и нужно найти такую статью в базе данных, но он в таком формате её не найдет.

Вот к примеру, эта статья в базе хранится под таким именем: "Привет" сказал он, а он ответил: "Хорошо".

Вряд ли такое я смогу обратно перевести! Поэтому мне нужно на стороне MySQL проверять оба значения уже с выполненной функцией.

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

Оранжевые штаны
0
22. Moto-Moto, так почему бы не сделать доп поле в БД и записывать в него такую ссылку?

поле ident записываем при создании новости. оно должно быть unique
Изменил: JustZero (07.10.2013 / 13:58)
Ю

deleted
0
22, О бог мой! Вам бы нормальный роутинг - половина проблем отпадет.
Автор
Пишу, строю и воображаю
0
22, можно подробнее?
J

Оранжевые штаны
0
ну вот смотри, сперва добавляем доп поле в бд например ident
при добавлении статьи записываем ident = url_to_covert(Имя статьи); (проверяем его на уникальность)
потом все делаем через ident
SELECT * FROM table WHERE ident=bla-bla-bla-bla

ссылки на статью выводим не через ф-цию, а уже тоже просто с БД echo $data['ident']

Добавлено через 01:40 сек.
т с роутами тоже просто все будет

Добавлено через 03:14 сек.
или я может не так понял?
Изменил: JustZero (07.10.2013 / 14:21)

Пришелец
0
Moto-Moto (7 Октября 2013 / 13:48)
Объясняю. Ссылка выглядит: domen.ru/obzori-i-novosti/privet-skazal-on-a-on-otvetil-horosho

А на странице PHP я беру последнюю часть ссылки, то есть "privet-skazal-on-a-on-otvetil-horosho" и нужно найти такую статью в базе данных, но он в таком формате её не найдет.

Вот к примеру, эта статья в базе хранится под таким именем: "Привет" сказал он, а он ответил: "Хорошо".
Автор, можно без всяких издевок это все сделать ? Как и писали тебе сделай обратное преобразование из url в текст, такое же на PHP можно сделать, если преобразует в алиасы, то сделай наоборот и просто подставь в условие WHERE
A

Пришелец
0
Автор, передавай ID и соответственно ищи по нему.
Еще вариант, заменить твою функцию на urlencode.

На счет дополнительного поля - если база маленькая, то можно. Хотя, при таком раскладе лучше сделать всё по человечески.
Вид ссылки test.com/news+and+news/1-test+article или test.com/новости+и+новости/1-тест+статья мне больше нравится. И лучше вообще обойтись без рубрики в url.
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск