Перейти к содержимому


Фото
- - - - -

Пропали дополнительные картинки некоторых товаров

товары исчезли пропали картинки изображение

  • Чтобы отвечать, сперва войдите на форум
18 ответов в теме

#1 DarAmal

DarAmal
  • Пользователь
  • 617 сообщений
  • Дизайн, Верстка
  • Версия CMS:2.x

Опубликовано 16.01.2015 - 10:48

Добрый день, друзья!

 

Возникла проблема.

Ранее пропали дополнительные картинки некоторых товаров. Оказалось, что объем Хостинга исчерпан. Но даже после увеличения объема Хостинга ничего не изменилось.

 

В чем может быть проблема и как решить?

 

Спасибо за любую информацию!



#2 Foх

Foх
  • Пользователь
  • 386 сообщений
  • Верстка
  • Версия CMS:2.x
  • Откуда:Краснодар

Опубликовано 16.01.2015 - 11:32

они каким образом пропали?битые ссылки стали?эти доп фото есть в папке originals? если присутствуют и их размер 0 то ток перезаливать.



#3 DarAmal

DarAmal
  • Пользователь
  • 617 сообщений
  • Дизайн, Верстка
  • Версия CMS:2.x

Опубликовано 16.01.2015 - 12:03

при клике пишет: "The requested content cannot be loaded. Please try again later."



#4 Kors

Kors
  • Фрилансер
  • 3 522 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Россия

Опубликовано 16.01.2015 - 13:18

Попробовать очистить папку files/products.

Если не поможет, исследовать папку files/originals, как говорилось выше...



#5 DarAmal

DarAmal
  • Пользователь
  • 617 сообщений
  • Дизайн, Верстка
  • Версия CMS:2.x

Опубликовано 16.01.2015 - 14:27

чистка files/products не помогло ((

а каким образом проверить весь каталог, что узнать в каких товарах существует данная проблема?

если их не много, можно было бы заново загружать картинки



#6 Kors

Kors
  • Фрилансер
  • 3 522 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Россия

Опубликовано 16.01.2015 - 14:41

Вам уже давали выше совет, как проверять:

эти доп фото есть в папке originals?

если присутствуют и их размер 0?

 

Если совсем автоматически хотите, то спец средствами, например:

http://simpla-tuning...kontrolkartinok



#7 Sheeft

Sheeft

    Senior Developer

  • Тех. поддержка
  • 1 521 сообщений
  • Программирование
  • Откуда:Москва

Опубликовано 16.01.2015 - 17:26

Мдя, а я такой скрипт бесплатно на форуме выкладывал, для проверки картинок в обе стороны (если картинка есть в папке но нет в базе - почистить папку. сделай себе такое еще, полезно бывает)



#8 Kors

Kors
  • Фрилансер
  • 3 522 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Россия

Опубликовано 16.01.2015 - 18:22

Если б Вы еще и ссылку выложили бы бесплатно, то совсем чудесно было бы...



#9 Sheeft

Sheeft

    Senior Developer

  • Тех. поддержка
  • 1 521 сообщений
  • Программирование
  • Откуда:Москва

Опубликовано 16.01.2015 - 18:27

	public function checkimgs()
	{
 				 
			$this->db->query('SELECT * FROM `s_images`');
			$imgs = $this->db->results();
			 
			foreach ($imgs as $img)
			{
				$nfn = getcwd() . "/files/originals/" . $img->filename;
			 
				if ( !file_exists($nfn) )
				 		$this->db->query('DELETE FROM `__images` WHERE filename = ?', $img->filename );
			}
			
  
		return true;
	}

 

Лень искать. Ну согласитесь элементарный код же? Это из разряда проверить по базе.

 

public function checkimgs()
	{
				$query = $this->db->placehold("SELECT filename FROM __images");
				$this->db->query($query);

				$imgs = $this->db->results();
				foreach ($imgs as $im)
				{
                                    $nfn = getcwd() . "/files/originals/" . $img->filename;
                                    if ( !file_exists($nfn) )
                                        {
                                              $this->db->query('DELETE FROM `__images` WHERE filename = ?', $img->filename );
                                        }
                                    else
				        $newimgs[] = $im->filename;
				}
			             $mask = "files/originals/*.*"; # Задаем маску поиска  			
			             $arr = glob($mask);
			             foreach($arr as $ar)
			             {
				        $arstr = str_replace("files/originals/","",$ar);
				        if (!in_array($arstr,$newimgs))
					   unlink($ar);
			}

		return true;
	}

А это с обратной проверкой.



#10 Kors

Kors
  • Фрилансер
  • 3 522 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Россия

Опубликовано 16.01.2015 - 19:02

Сейчас у Вас в коде сделано удаление несоответственных вхождений.

 

Если Вам все это так элементарно, то, может, добавите еще функционала полезного?  Например:

1. Список записей в базе, для которых нет картинок.

2. Список картинок, для которых нет записей в базе.

3. Чтоб просматривались комфортно оба списка, с уцелевшими данными, со ссылками на страницы редактирования.

4. Хорошо бы учесть случаи, когда размер графического файла 0.

5. Удалять данные не сразу, а по отдельной команде, желательно даже выборочно.

 

Ведь цель ТС не в том, чтобы удалить несоответствия, а в том, чтобы восстановить испорченные данные.



#11 Sheeft

Sheeft

    Senior Developer

  • Тех. поддержка
  • 1 521 сообщений
  • Программирование
  • Откуда:Москва

Опубликовано 16.01.2015 - 19:20

Я не ставлю цель написать платное дополнение, а лишь поделился бесплатным способом

#12 DarAmal

DarAmal
  • Пользователь
  • 617 сообщений
  • Дизайн, Верстка
  • Версия CMS:2.x

Опубликовано 17.01.2015 - 09:59

Sheeft и Kors , спасибо большое за ответы.
Sheeft , если не сложно, скажите пожалуйста, куда это все вставить, чтобы провести проверку?!

 

Благодарю!



#13 Scodch

Scodch
  • Пользователь
  • 48 сообщений
  • Версия CMS:2.x
  • Откуда:Санкт-Петербург

Опубликовано 04.09.2015 - 13:46

Sheeft , если не сложно, скажите пожалуйста, куда это все вставить, чтобы провести проверку?!

 

DarAmal, я столкнулся с похожей проблемой. Вы разобрались куда вставить код Sheeft, чтобы провести эту проверку?!



#14 DarAmal

DarAmal
  • Пользователь
  • 617 сообщений
  • Дизайн, Верстка
  • Версия CMS:2.x

Опубликовано 04.09.2015 - 14:07

DarAmal, я столкнулся с похожей проблемой. Вы разобрались куда вставить код Sheeft, чтобы провести эту проверку?!

к сожалению нет. проверку не смог выполнить



#15 Scodch

Scodch
  • Пользователь
  • 48 сообщений
  • Версия CMS:2.x
  • Откуда:Санкт-Петербург

Опубликовано 04.09.2015 - 14:54

к сожалению нет. проверку не смог выполнить

 

DarAmal, очень жаль.

А еще кто нибудь разбирается в этом и может помочь?

Кто понимает куда нужно вставить код Sheeft, что бы осуществить проверку изображения на его наличие в папке originals и удалить его из базы данных, если изображения в папке нет?
 


Изменено: Scodch, 04.09.2015 - 14:54


#16 mishanya

mishanya
  • Фрилансер
  • 2 318 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 04.09.2015 - 19:49

DarAmal, очень жаль.

А еще кто нибудь разбирается в этом и может помочь?

Кто понимает куда нужно вставить код Sheeft, что бы осуществить проверку изображения на его наличие в папке originals и удалить его из базы данных, если изображения в папке нет?
 

 

у функции нет параметров. вы можете просто вставить ее в api/Image.php

и вызывать эту ф-ю в админке на какой-то странице, настроек например через

$this->image->checkimgs(); 

привязав ее к кнопке.


Изменено: mishanya, 04.09.2015 - 19:50


#17 Scodch

Scodch
  • Пользователь
  • 48 сообщений
  • Версия CMS:2.x
  • Откуда:Санкт-Петербург

Опубликовано 05.09.2015 - 01:31

Спасибо mishanya! Попробую поколдовать, может что нибудь и получиться=)



#18 collinxx

collinxx
  • Пользователь
  • 1 сообщений
  • Заказчик
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 18.07.2017 - 13:18

Добрый день. Прошу помощи у разработчиков. Я перенесла сайт с поддомена на основной домен и картинки все пропали. Где и что мне поправить? Поделитесь, пожалуйста опытом. Спасибо большое.



#19 Kosjak76

Kosjak76
  • Модератор
  • 3 563 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Харьков, Украина

Опубликовано 18.07.2017 - 13:32

Во-первых, нужно проверить свободное место на хостинге.

Потом проверить наличие библиотек GD или imagik на хостинге.

Потом наличие оригиналов картинок в папке files/originals

Если не поможет - пишите в скайп kosjak1976 (недорого)







Также с меткой «товары, исчезли, пропали, картинки, изображение»

0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых