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

Karyuudo

  • Захожу иногда
  • 354
  • 0 / 0
Делаю плагин переименовывания, пока готовы наброски.
Следующий скрипт переименовывает (я в папке плагина создавал test.php с тем же кодом), однако когда я его вставляю под

Код
public function onContentAfterSave( $context, $article, $isNew )
{

то ничего при сохранении материала не происходит. Почему?

Код
public function onContentAfterSave( $context, $article, $isNew )
{


$patch = '../../../images/recepty/newimg';
$handle = opendir($patch);
while(($file = readdir($handle))) {
    if ( is_file ($patch."/".$file) ) /*.переименовываем файл.*/
    {
        echo $patch .  "/" . $file;
        echo rename ( $patch .  "/" . $file, $patch .  "/renamed_" . $file );
    }
}

}
« Последнее редактирование: 11.01.2016, 12:21:49 от Karyuudo »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ничего - это что? не срабатывает событие? не находит директорию? находит, но не переименовывает файлы? что?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Karyuudo

  • Захожу иногда
  • 354
  • 0 / 0
ничего - это что? не срабатывает событие? не находит директорию? находит, но не переименовывает файлы? что?
не срабатывает событие - файл в папке так и остается не переименованным.
другие события срабатывают, а это как-будто игнорируется
*

fsv

  • Живу я здесь
  • 2765
  • 402 / 2
$patch = JPATH_ROOT . '/images/recepty/newimg';
Веб-разработка: заказ. Только новая объемная разработка. Качественно, дорого.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Цитировать
не срабатывает событие - файл в папке так и остается не переименованным
это может быть из-за 100500 причин, например нет прав на запись в папке. вы уверенны что именно событие не срабатывает?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Karyuudo

  • Захожу иногда
  • 354
  • 0 / 0
$patch = JPATH_ROOT . '/images/recepty/newimg';
тоже ничего не происходит
*

Karyuudo

  • Захожу иногда
  • 354
  • 0 / 0
это может быть из-за 100500 причин, например нет прав на запись в папке. вы уверенны что именно событие не срабатывает?
а как узнать причину?
права есть, это на денвере
путь - если запускать скрипт из соседней папки - то переименовывает.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
а как узнать причину?
вариантов великое множество. в файл логируйте. хотя бы
Код: php
die;
сделайте в плагине и посмотрите что там происходит
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Karyuudo

  • Захожу иногда
  • 354
  • 0 / 0
Все понял! Спасибо.
После остановки - появилось сообщение об ошибке. Начал разбираться.
Оказывается у меня директория называется по другому, не recepty. Это я перепутал с другим...
« Последнее редактирование: 13.01.2016, 15:32:23 от Karyuudo »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
ну вот, уже проще. а то событие не вызывается, событие не вызывается :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Karyuudo

  • Захожу иногда
  • 354
  • 0 / 0
Подумал, что оптимальнее перенести этот скрипт в другой плагин.
но почему-то снова не работает :(

Код
$patch = JPATH_ROOT .'/images/test';
$handle = opendir($patch);

while(($file = readdir($handle))) {

    if ( is_file ($patch.'/'.$file) ) /*.переименовываем файл.*/
    {
echo $patch .  '/' . $file.'<br> - patch+file';

if ($file=='0.jpg' || $file=='0.JPG'){

rename ( $patch .  '/' . $file, $patch .  '/'.$patch.'.jpg');
echo $patch .  '/' . $file.'<br> - patch+file';
echo $patch.' - patch <br>';
echo $file.' - file <br>';
die;

} //переименовать 0.jpg в название папки.jpg



if (preg_match('/^(\d+)(.[jJ][pP][gG])$/u', $file)) {
rename ( $patch .  "/" . $file, $patch .  "/".$patch.'-'.mb_strtolower($file));} //добавить к цифренному имени файла нпазвание папки и черточку
    }
}

выдает:
Цитировать
Z:\home\сайт.ru\www/images/test/0.JPG
- patch+file
Warning: rename(Z:\home\сайт.ru\www/images/test/0.JPG,Z:\home\сайт.ru\www/images/test/Z:\home\сайт.ru\www/images/test.jpg) [function.rename]: �������������� ������ � ����� �����, ����� ����� ��� ����� ����. (code: 123) in Z:\home\сайт.ru\www\plugins\content\imageresizer\imageresizer.php on line 168
Z:\home\сайт.ru\www/images/test/0.JPG
- patch+fileZ:\home\сайт.ru\www/images/test - patch
0.JPG - file

в то время точно такой же скрипт, вызываемый из другого плагина выдает:
Цитировать
Z:\home\сайт.ru\www/images/test/0.JPG
- patch+fileZ:\home\сайт.ru\www/images/test - patch
0.JPG - file

кажется понял, надо было кусок кода поместить в другое место... пробую дальше.. но уже нет ошибки и пошло переименовывание, правда пока не как надо
« Последнее редактирование: 14.01.2016, 19:22:19 от Karyuudo »
*

fsv

  • Живу я здесь
  • 2765
  • 402 / 2
rename ( $patch .  '/' . $file, $patch .  '/'.$patch.'.jpg');
newname - 2 раза путь указали
Веб-разработка: заказ. Только новая объемная разработка. Качественно, дорого.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работает плагин на хостинге

Автор a7951396

Ответов: 3
Просмотров: 476
Последний ответ 29.11.2023, 17:56:49
от a7951396
Плагин joomirseopagination доработка

Автор Stasweb

Ответов: 15
Просмотров: 1152
Последний ответ 16.03.2023, 15:00:33
от Stasweb
Пробовали антиспам плагин akismet? Или как боретесь со спамом

Автор falkas

Ответов: 4
Просмотров: 1497
Последний ответ 23.05.2020, 18:43:03
от Mik Foxi
Почему в учебном уроке перенаправление идет на тот же вид?

Автор borro

Ответов: 0
Просмотров: 481
Последний ответ 12.04.2020, 12:03:51
от borro
Пишу плагин подмены города, как правильнее сделать?

Автор d0ublezer0

Ответов: 6
Просмотров: 939
Последний ответ 03.12.2019, 17:52:51
от dm-krv