Verweiste Bilder löschen

Thema wurde von Ollie, 18. Juli 2011 erstellt.

  1. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    Hallo zusammen,

    hat von Euch jemand ne Idee wie man unbenutzte Bilder löscht....

    Vielen Dank schon mal
     
  2. Avenger

    Avenger G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Das kann man nur per Programm lösen...

    Ich habe kürzlich ein solches Programm entwickelt: _clean_image_files.php (siehe Anhang).

    "_clean_image_files.php" in die Shop-Root kopieren, und mit http://www.mein-shop.de/_clean_image_files.php starten.

    Man muss als Hautpadmin(!) eingelogged sein, sonst verweigert des Programm den Dienst!

    Das Prog mach 2 Dinge:

    1.

    Es durchläuft die Dateien im Verzeichnis "images\roduct_images\original_images", und prüft, ob der Dateiname in der Artikeldatenbank vorhanden ist.

    Wenn nicht, dann wird diese Datei in allen Bilderverzeichnissen gelöscht.

    Die durchgeführte Aktion für jedes Bild wird ausgegeben.

    2.

    Es durchläuft alle Artikel der DB, und prüft, ob das definierte Bild in den Bilderverzeichnissen vorhanden ist (um das Vorhandensein der notwendigen Bilder zu prüfen).

    Wenn nein, gibt es eine Meldung aus.

    Wie immer gilt:

    Die Anwendung erfolgt ausschließlich auf eigenes Risiko des Anwenders!

    Es besteht kein Anspruch auf Fehlerfreiheit und/oder Fehlerbehebung.

    Vor Ausführung unbedingt Backup des "pictures"-Verzeichnisses machen!

    Am Besten erst mal mit einer lokalen Shop-Kopie testen.

    HTH
     

    Anhänge:

  3. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    Ja prima - Danke Avenger!

    Ich probiers mal aus :)

    Meinst Du es funktioniert auch beim GX1 ?
     
  4. Avenger

    Avenger G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Ja, das wird funktionieren...
     
  5. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    Ich habs gerade mal laufen lassen - nach einer kompletten Sicherung - aber es gab ne Fehlermeldung - da hab ich nur keinen blassen Schimmer was das bedeutet

    WARNING(512): "SQL Error" in /homepages/28/............/htdocs/bastelkasten/inc/xtc_db_error.inc.php:30 (Details)

    Backtrace:
    #0 trigger_error called at [/homepages/28/............./htdocs/bastelkasten/inc/xtc_db_error.inc.php:30]
    #1 xtc_db_error called at [/homepages/28/................../htdocs/bastelkasten/inc/xtc_db_query.inc.php:30]
    #2 xtc_db_query called at [/homepages/28/............../htdocs/bastelkasten/_clean_image_files.php:42]
     
  6. Avenger

    Avenger G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Hhmm, merkwürdig, kann ich hier nicht nachvollziehen...

    Ich lasse jetzt mal relevante Debug-Infos anzeigen.

    Bevor der Fehler auftritt sollte eine Anzeige wie folgt erscheinen:

    ***** sql='SELECT ........'

    Wenn Du die letzte Anzeige dann mal posten kannst, dann kann ich erkennen, wo das Problem liegt.

    Könnte mit besonderen Dateinamen von Bilddateien zusammen hängen...
     

    Anhänge:

  7. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    Sorry Avenger - ich kanns im Moment nicht ausprobieren - mach ich aber noch.
    Ich habe gerade den Provider gewechselt und hab hier nur noch die Kacke am Dampfen
     
  8. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    Hi Avenger - ich hab mal ne Frage zu Deiner Seite Powertemplate.
    Du bietest doch auch Module an - aber wo? Ein kleiner Hinweis darauf im Text verlief ins Leere

    Ich habe zum Beispiel ein Live Shopping Modul in einem Demoshop von Dir gesehen - wo finde ich denn dazu Infos
     
  9. Avenger

    Avenger G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    Wir bieten keine standalone-Module an, sondern entwickeln und integrieren solche Funktionen nur im Rahmen kompletter Shop-Projekte.
     
  10. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    Achso - deshalb kann ich nix finden - Schade :-(

    Die Sache mit den verwaisten Bildern teste ich aber auf jeden Fall nochmal - ich komme nur gerade nicht dazu - weil ich ja gerade umgezogen bin - und ich jetzt erst mal den laufenden Shop kopieren muß.
     
  11. Avenger

    Avenger G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
  12. C h r i s t i a n

    C h r i s t i a n G-WARD 2012

    Registriert seit:
    26. April 2011
    Beiträge:
    3.456
    Danke erhalten:
    330
    Danke vergeben:
    551
    @Avenger,

    ja das ließt sich alles schön und die Liveshoppingfunktion würde auch bei uns Sinn machen, zumal wir aus Lagerhaltung mit großen Stückzahlen unsere Kunden bedienen.

    Problem ist nur, das nicht jeder ein ganzes Template gestaltet haben möchte.
     
  13. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    @Dakler - jupp - so isses! Ich kanns zwar verstehen, weil jedes Modul was ich irgendwo kaufe mit einem generellen Shop-Update zunichte gemacht werden kann - und so isses bei denen dann in einer Hand.

    @Avenger - Im Ecombase Shop war das glaube ich auch implementiert - oder? Du warst doch auch dort im Forum - oder irre ich mich da?
    Und wurde dort das Modul nicht auch einzeln angeboten?
     
  14. Avenger

    Avenger G-WARD 2012/13/14/15

    Registriert seit:
    26. April 2011
    Beiträge:
    4.771
    Danke erhalten:
    1.478
    Danke vergeben:
    89
    @Dakler - jupp - so isses! Ich kanns zwar verstehen, weil jedes Modul was ich irgendwo kaufe mit einem generellen Shop-Update zunichte gemacht werden kann - und so isses bei denen dann in einer Hand.[/QUOTE]
    Einmal das. Wir können solche Funktion freischalten und die notwendigen Zusatzdateien im Shop einspielen, und das funktioniert.

    Der Moduleinbau ist derzeit ja sonst noch eine Pest.

    Es gibt aber noch einen anderen Grund: wenn man ein Modul für eine GPL-lizenzierte Software anbietet, dann wird das automatisch auch GPL-lizenziert, und jeder darf es weiter verteilen, ohne dass man noch irgendeinen Erlös bringt. xtC- und Gambio-Module bekommt man ja an jeder Ecke kostenlos zum Download.

    Und dazu haben wir einfach keine Lust.

    So bleibt das alles schön in unserem Copyright, weil wir das nicht zum Download anbieten, und das somit nicht der GPL unterliegt..... :)

    Bei den "Dual licence"Shops wie OXID, Shopware, Magento,??? ist die Situation anders, weil man da Module nur für die kommerziell lizenzierten Varianten anbieten kann, die dann nicht der GPL unterliegen.

    Dass die auch mit der GPL-Variante der Software funktionieren ist sehr schön, aber lizenzrechtlich ist man da als Entwickler auf der sicheren Seite.

    Nein, diese Funktion ist brandneu von uns entwickelt, hat mit anderen nichts zu tun....

    Wir haben einfach qualitativ höhere Ansprüche.
     
  15. C h r i s t i a n

    C h r i s t i a n G-WARD 2012

    Registriert seit:
    26. April 2011
    Beiträge:
    3.456
    Danke erhalten:
    330
    Danke vergeben:
    551
    @Avenger,

    ok, das kann ich dann auch so voll und ganz nachvollziehen.
     
  16. Ollie

    Ollie Erfahrener Benutzer

    Registriert seit:
    27. April 2011
    Beiträge:
    231
    Danke erhalten:
    6
    Danke vergeben:
    50
    Jupp - ich habs gehasst bei XTC module einzubinden

    Aber komisch - ich hab solch eine Live-Shopping funktion doch schon in nem Shopsystem drin gehabt *kopfkratz* Ich meine das wäre ECB gewesen.....

    Na egal....

    Aber mal so nebenbei gefragt - was kostet dann bei Euch ein Shopsystem tuti kompletti?
     
  17. wölfin

    wölfin Erfahrener Benutzer

    Registriert seit:
    16. Juni 2011
    Beiträge:
    173
    Danke erhalten:
    5
    Danke vergeben:
    38
    Das Script ist sicher gut, nützt mir aber nichts, da bei mir die Original-Images schon lange nicht mehr im entsprechenden Ordner vorhanden sind. Ich lösche sie, wenn sie mit Imageprocessing bearbeitet wurden, sonst macht er ja immer wieder alle Bilder neu - bei 4000 Artikeln nicht gerade günstig ;-(.
    Also brauchte ich eine Lösung, wo in der Datenbank nachgeschaut wird, ob der Artikel noch vorhanden ist. Wenn nicht, soll das Bild - dessen Name wie die Artikelnr. lautet, in allen Bilderordnern gelöscht werden.

    Weiß jemand, ob das Script von hier http://www.xtc-modified.org/forum/index.php?topic=2051.0 auch bei gambio gx2 funktioniert? Hat es evtl. schon jemand genutzt?
     
  18. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.475
    Danke erhalten:
    11.263
    Danke vergeben:
    1.607
    #18 barbara, 21. August 2012
    Zuletzt bearbeitet: 21. August 2012
    Hallo Avenger,

    ich habe das selbe Problem wie Ollie.
    Im 1. Script ist es die Zeile 42 und im 2. Zeile 44
    Code:
    $res=xtc_db_query($sql);
    Hier die Ganze Meldung:
    Code:
    ***** sql='SELECT products_id FROM productsSQL_WHEREproducts_image='01.jpg''
    WARNING(512): "SQL Error" in /var/www/web45/html/testshop/inc/xtc_db_error.inc.php:33 (Details)
    Backtrace:
    #0  trigger_error called at [/var/www/web45/html/testshop/inc/xtc_db_error.inc.php:33]
    #1  xtc_db_error called at [/var/www/web45/html/testshop/inc/xtc_db_query.inc.php:68]
    #2  xtc_db_query called at [/var/www/web45/html/testshop/_clean_image_files.php:44]
     
  19. HolgerNils (xycons.de)

    HolgerNils (xycons.de) G-WARD 2013/2014

    Registriert seit:
    29. Oktober 2011
    Beiträge:
    1.984
    Danke erhalten:
    468
    Danke vergeben:
    369
    Barbara,
    ich habe in Zeile 23 was geändert:

    $sql0="SELECT products_id FROM ".TABLE_PRODUCTS." WHERE products_image='%s'";

    Dann gings.
     
  20. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.475
    Danke erhalten:
    11.263
    Danke vergeben:
    1.607
    Danke, funktioniert :)