Форум русской поддержки Joomla!® CMS
11.12.2016, 02:21:58 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Как вывести корретную ссылку на файл из базы данных?

 (Прочитано 394 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Gorilla
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 56


« : 09.03.2016, 19:47:41 »

Столкнулся с тем, что при отправке по почте приходит ссылка на загруженные файлы вида /папка/папка/папка/файл.doc, в базе данных ссылка в столбце записывается в таком виде, но мне нужно, чтобы путь по почте приходила в виде названия файла, то есть в виде файл.doc. В настоящее время вывожу в виде простой переменной {table_element}, которая передает полный путь файла. Как можно это исправить?
Записан
effrit
Группа развития
*****

Репутация: +733/-7
Offline Offline

Пол: Мужской
Сообщений: 6827


effrit.com


« Ответ #1 : 09.03.2016, 20:00:44 »

на сколько я понимаю, надо написать регулярное выражение, либо разбить строку по слешам и взять последний элемент
Записан
SeBun
Практически профи
*******

Репутация: +134/-3
Offline Offline

Пол: Мужской
Сообщений: 2289



« Ответ #2 : 09.03.2016, 21:22:11 »

Если я тоже правильно понял, то вам пригодиться вот это и это.
Записан
Gorilla
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 56


« Ответ #3 : 10.03.2016, 09:45:35 »

Спасибо за советы, но я пытаюсь вывести все это используя лишь HTML код, так как реализация по тем ссылкам которые прислали слишком длинно. В настоящее время удалось вывести ссылку на файл в виде активного линка, но как вывести название не могу понять, моих знаний просто не хватает. я бы даже сказал их почти нет.
Немного поподробнее: есть путь для загрузки вида /папка/папка/папка/файл.doc, который записывается в базу данных, мне надо вывести активную ссылку или неактивную (имя файла) на этот файл с нормальным видом, то есть либо файл.doc в виде ссылки, либо просто название.
Решил часть задачи таким образом, но не получилось, чтобы имя прописалось из базы данных автоматически, поэтому переменная неверная, также если ссылок две то не могу разделить их, хотя и стоит запятая между ними

<strong>Файлы:</strong> <a href=http://mysite.ru{table_element} title={table_element}>'.$row['title'].'</a>

Буду рад помощи
Записан
AlekVolsk
Профи
********

Репутация: +317/-3
Offline Offline

Пол: Мужской
Сообщений: 6461



« Ответ #4 : 10.03.2016, 12:05:02 »

А откуда берется {table_element} ?
И где вообще это вы приписываете?

PS: ошиблись разделом, вам в общие вопросы по веб-разработке
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7786



« Ответ #5 : 10.03.2016, 12:09:48 »

вот вам обложка от книги, скажите какое в этой книге 2-е слово в 10 строке на странице 34 Azn
Записан
Gorilla
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 56


« Ответ #6 : 10.03.2016, 12:22:33 »

А откуда берется {table_element} ?
И где вообще это вы приписываете?

PS: ошиблись разделом, вам в общие вопросы по веб-разработке

если бы это была разработка )))
{table_element}, где table-это название таблицы в базе данных, а element-это столбец из которого берутся данные, фигурные скобки необходимы для выгрузки данных из нужной таблицы и нужного столбца/строки
Записан
robert
Профи
********

Репутация: +344/-11
Offline Offline

Пол: Мужской
Сообщений: 3595


« Ответ #7 : 10.03.2016, 12:34:28 »

У ТС, скорее всего, установлен какой-то плагин, о существовании которого он вообще не знает, судя по его сообщению
Спасибо за советы, но я пытаюсь вывести все это используя лишь HTML код, так как реализация по тем ссылкам которые прислали слишком длинно.
Это substr() и strpos() "слишком длинно".
Записан
SeBun
Практически профи
*******

Репутация: +134/-3
Offline Offline

Пол: Мужской
Сообщений: 2289



« Ответ #8 : 10.03.2016, 12:52:40 »

Это substr() и strpos() "слишком длинно".
Можно и короче, basename.

{table_element}, где table-это название таблицы в базе данных, а element-это столбец из которого берутся данные, фигурные скобки необходимы для выгрузки данных из нужной таблицы и нужного столбца/строки

Фигурные скобки тут для другого... Я что хочу сказать... Не решите вы свою задачу таким образом. Ибо, как написал robert,

Цитировать
У ТС, скорее всего, установлен какой-то плагин, о существовании которого он вообще не знает, судя по его сообщению

Другими словами, вы получаете значение из таблицы, это значение передается в то место документа, где стоит {table_element}. Все, больше с ним ничего не сделаешь. Тут либо использовать PHP, либо JS. Но никак не HTML.

Цитировать
<a href=http://mysite.ru{table_element} title={table_element}>'.$row['title'].'</a>

Судя по всему, эта строка у вас в php-файле. Похоже, что здесь {table_element} - это свойство некого объекта... Я не вижу весь код, не могу сказать. Но можно написать примерно так:

Код
$my_title = basename(table_element);
echo <<<EOF
<strong>Файлы:</strong> <a href=http://mysite.ru{table_element} title={$my_title}>'.$row['title'].'</a>
EOF;

Экспериментируйте, я не знаю где у вас какие значения. var_dump вам в помощь.
« Последнее редактирование: 10.03.2016, 13:21:45 от SeBun » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet