0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 226 Просмотров
*

borro

  • Живу я здесь
  • 1281
  • 21
  • желаю вам счастья
Здравствуйте!

Столкнулся с тем, что в форме при её отправке надо передавать отмеченные чекбоксом значения путей к файлам, содержащие прямые слэши(/).
Вот так вставляю в форму то, что буду потом ловить при отработке задачи:
Код
<td>
  <?php echo JHtml::_('grid.id', $i, $row->file_url); ?>
</td>
Когда потом получаю то, что было выбрано с помощью
Код
JFactory::getApplication()->input->post->get('cid');
, то видно что пути приходят без слэшей.

Вопрос, как передавать и получать значения со слэшами?
« Последнее редактирование: 06.07.2017, 13:13:10 от borro »
*

Aleks.Denezh

  • Практически профи
  • 2806
  • 377
самое глупое что пришло в голову <?php echo JHtml::_('grid.id', $i,  base64_encode($row->file_url)); ?>
Мой  блог по разработке на Joomla CMS!
Хотите отблагодарить материально? Мой WMR: R861060179016
*

borro

  • Живу я здесь
  • 1281
  • 21
  • желаю вам счастья
самое глупое что пришло в голову <?php echo JHtml::_('grid.id', $i,  base64_encode($row->file_url)); ?>
Спасибо!
Почти справилась функция с задачей. Только русские буквы в названии файла коверкаются.
Пробовал такое:
Код
echo JHtml::_('grid.id', $i, base64_encode((strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')? iconv('windows-1251','UTF-8',$row->file_url):$row->file_url));
но не срабатывает. Есть идея, как отправлять и принимать при этом русские буквы в названиях правильно?
*

Aleks.Denezh

  • Практически профи
  • 2806
  • 377
единственное правильное решение это хранить ссылки на файле в базе и передаавать потом айддишники!
Мой  блог по разработке на Joomla CMS!
Хотите отблагодарить материально? Мой WMR: R861060179016
*

borro

  • Живу я здесь
  • 1281
  • 21
  • желаю вам счастья
единственное правильное решение это хранить ссылки на файле в базе и передаавать потом айддишники!
если хранить их в базе, то там русские буквы сохранятся правильно?
*

Septdir

  • Практически профи
  • 2273
  • 112
  • JoomlaZen
JFactory::getApplication()->input->post->getAray('cid');
Просто get это для строки и уже с фильтрами. Так не совсем верно конечно, но по идеи должно работать
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
________
Мои Контакты | JoomlaZen
*

Aleks.Denezh

  • Практически профи
  • 2806
  • 377
если хранить их в базе, то там русские буквы сохранятся правильно?
конечно!
Мой  блог по разработке на Joomla CMS!
Хотите отблагодарить материально? Мой WMR: R861060179016
*

SmokerMan

  • Профи
  • 5333
  • 689
Вопрос, как передавать и получать значения со слэшами?
Код
JFactory::getApplication()->input->post->get('cid', null, 'string');
ибо по умолчанию там идет фильтр cmd по моему, поэтому слэши и вырезаются вместе с кирилицей
*

borro

  • Живу я здесь
  • 1281
  • 21
  • желаю вам счастья
Спасибо, Septdir и SmokerMan. Оба варианта рабочие
*

borro

  • Живу я здесь
  • 1281
  • 21
  • желаю вам счастья
Теперь :) почему-то не удаляются файлы с русскими буквами в названии с помощью unlink:
Код
unlink(JPATH_SITE.DS.$value);
при получении в параметры значения вида:
Цитировать
string 'C:\xampp_new\htdocs\asu170322\images/stories/virtuemart/product/834 — копия — копия — копия.jpg'
возвращает предупреждение:
Цитировать
Warning: unlink(C:\xampp_new\htdocs\asu170322\images/stories/virtuemart/product/834 — копия — копия — копия.jpg): No such file or directory in ...php on line 22
Если файл без кириллицы, то этой же строкой он удаляется из файловой системы.
Как в этом случае коду помочь? :)
*

SmokerMan

  • Профи
  • 5333
  • 689
для начала проверить есть ли этот файл действительно и называется он так же или нет
*

borro

  • Живу я здесь
  • 1281
  • 21
  • желаю вам счастья
для начала проверить есть ли этот файл действительно и называется он так же или нет
да, есть, вот так называется:
Цитировать
834 — копия — копия — копия.jpg
все другие файлы из этой папки удаляются вышеприведенным unlink, если они без кириллицы
*

Septdir

  • Практически профи
  • 2273
  • 112
  • JoomlaZen
Спасибо, Septdir и SmokerMan. Оба варианта рабочие
Вариант SmokerMan более верный.
Теперь :) почему-то не удаляются файлы с русскими буквами в названии с помощью unlink:
Код
unlink(JPATH_SITE.DS.$value);
при получении в параметры значения вида:возвращает предупреждение:Если файл без кириллицы, то этой же строкой он удаляется из файловой системы.
Как в этом случае коду помочь? :)
Windows + кириллица убойная комбинация.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
________
Мои Контакты | JoomlaZen
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

com_ajax передача данных из формы POST

Автор ChervonStudio

Ответов: 32
Просмотров: 508
Последний ответ 28.08.2017, 10:58:20
от onelawyer
нету возможности авторизоваться без формы

Автор pavel2950

Ответов: 1
Просмотров: 171
Последний ответ 06.01.2017, 12:36:25
от SmokerMan
Ошибка про вызове формы в контрллере компонента

Автор GuDeVic

Ответов: 21
Просмотров: 351
Последний ответ 16.12.2016, 01:16:29
от robert
как сохранить HTML содержимое?

Автор john.deff

Ответов: 1
Просмотров: 276
Последний ответ 30.05.2016, 02:40:55
от Aleks.Denezh
Подключение формы в компоненте

Автор Stic-2009

Ответов: 3
Просмотров: 412
Последний ответ 21.04.2016, 07:20:01
от b2z