harald.thomas Posted August 26 Share Posted August 26 Hallo zusammen, in unserem shop verschwinden sporadisch Artikel. Version 8.2.1. Die Artikel sind dann gelöscht und müssen neu angelegt werden. Ich hatte schon den Verdacht, dass die Artikel automatisch bei Menge 0 gelöscht werden, ist aber nicht so. Gibt es irgendwo einen Schalter womit Artikel unter bestimmten Gegebenheiten automatisch gelöscht werden? Danke für alle Hinweise Harald Link to comment Share on other sites More sharing options...
ComGrafPL Posted August 26 Share Posted August 26 Haben Sie die Protokolle überprüft? Gibt es eine API oder ein benutzerdefiniertes Modul für die Produktverwaltung? Link to comment Share on other sites More sharing options...
rictools Posted August 26 Share Posted August 26 Wurde zu den Zeitpunkten, als Artikel gelöscht wurden, am Shop gearbeitet, z. B. neue Artikel eingepflegt oder importiert? Hast du einmal das Shop-Passwort und am besten auch den Namen des Admin-Ordners geändert, vielleicht greift jemand auf den Shop zu? Link to comment Share on other sites More sharing options...
harald.thomas Posted August 26 Author Share Posted August 26 5 hours ago, ComGrafPL said: Haben Sie die Protokolle überprüft? Gibt es eine API oder ein benutzerdefiniertes Modul für die Produktverwaltung? In den Protokollen nichts gefunden. Keine API oder benutzerdefinierte Module. Link to comment Share on other sites More sharing options...
harald.thomas Posted August 26 Author Share Posted August 26 3 hours ago, rictools said: Wurde zu den Zeitpunkten, als Artikel gelöscht wurden, am Shop gearbeitet, z. B. neue Artikel eingepflegt oder importiert? Hast du einmal das Shop-Passwort und am besten auch den Namen des Admin-Ordners geändert, vielleicht greift jemand auf den Shop zu? ich weiss leider keine genauen Zeitpunkte, habe nichts im log gefunden. Passwörter wurden sofort geändert, gibt es ein API Token oder ähnliches? Link to comment Share on other sites More sharing options...
harald.thomas Posted August 27 Author Share Posted August 27 Gibt es eine art Debug log für den Artikelstamm? Link to comment Share on other sites More sharing options...
harald.thomas Posted August 30 Author Share Posted August 30 (edited) Ich habe weiter gesucht, ich sehe im Shop Artikel, die ich nicht in der artkilelliste, aber über die Backoffice suche finde. Hat jemand einen Tipp? Edited August 30 by harald.thomas (see edit history) Link to comment Share on other sites More sharing options...
harald.thomas Posted August 30 Author Share Posted August 30 in der Bestandsverwaltung kann ich die Artikel sehen, die id finde ich aber nicht in der artikelliste Link to comment Share on other sites More sharing options...
harald.thomas Posted August 30 Author Share Posted August 30 Ich hab glaub ich ne Spur, evtl. kann jemand etwas damit anfangen: Katalog-> Artikel -> 81 Artikel, höchste id 218 Katalog -> Lager -> 134 Artikel, höchste id 222 Shop-Einstellungen -> Suche -> Indizierte Artikel 102 / 102, höchste id leider nicht sichtbar Link to comment Share on other sites More sharing options...
rictools Posted August 30 Share Posted August 30 Scheint, als ob da ein Filter gesetzt ist. Link to comment Share on other sites More sharing options...
cocos.codes Posted Monday at 08:38 AM Share Posted Monday at 08:38 AM Hallo, Es könnte auch ein Problem mit dem Cache sein... Versuchen Sie es in dieser Richtung. Link to comment Share on other sites More sharing options...
harald.thomas Posted Monday at 11:19 AM Author Share Posted Monday at 11:19 AM Kein Filter. Cache deaktiviert, trotzdem gleiches Problem. gestern habe ich Artikel neu angelegt, heute waren zwei wieder weg. Link to comment Share on other sites More sharing options...
cocos.codes Posted Monday at 11:39 AM Share Posted Monday at 11:39 AM Welche Dateien befinden sich in den Verzeichnissen override/classess und override/controllers? Link to comment Share on other sites More sharing options...
rictools Posted Monday at 11:41 AM Share Posted Monday at 11:41 AM Das ist schon sehr seltsam. Im Shop (Frontend) sind die Artikel vorhanden? Eine Standardfrage bei rätselhaften Symptomen: Welche PHP-Version ist aktiv? Link to comment Share on other sites More sharing options...
harald.thomas Posted Monday at 12:19 PM Author Share Posted Monday at 12:19 PM 39 minutes ago, cocos.codes said: Welche Dateien befinden sich in den Verzeichnissen override/classess und override/controllers? /override/classes # ls assets cache Cart.php checkout container controller Customer.php db Employee.php exception form helper index.php lang log module order pdf range shop Smarty stock tax tree webservice /override/controllers # ls admin front index.php Link to comment Share on other sites More sharing options...
harald.thomas Posted Monday at 12:22 PM Author Share Posted Monday at 12:22 PM 38 minutes ago, rictools said: Das ist schon sehr seltsam. Im Shop (Frontend) sind die Artikel vorhanden? Eine Standardfrage bei rätselhaften Symptomen: Welche PHP-Version ist aktiv? teilweise sind sie auch im frontend weg. als ob jemand absichtlich Artikel löscht. es haben nur 2 Personen zugriff, beide löschen nichts ohne abspräche mit dem anderen. PHP 8.1.33 Link to comment Share on other sites More sharing options...
rictools Posted Monday at 12:29 PM Share Posted Monday at 12:29 PM Gelöscht scheinen die Artikel nach deiner Angabe aber ja nicht zu sein, sondern sie werden nur nicht in der Artikelliste (und dann wohl teilweise auch im Shop) nicht angezeigt. Hast du einmal direkt in die Datenbank geschaut? Vielleicht lassen sich da Gemeinsamkeiten fehlender Artikel erkennen. Link to comment Share on other sites More sharing options...
harald.thomas Posted Monday at 02:12 PM Author Share Posted Monday at 02:12 PM In der Datenbank sehen alle Artikel gleich aus. Gibt es irgendeine art von Debug log, welches alle Artikeländerungen aufzeichnet? Link to comment Share on other sites More sharing options...
rictools Posted Monday at 02:39 PM Share Posted Monday at 02:39 PM Suche nach Gemeinsamkeiten der Artikel, die in der Artikelliste im BO oder im Shop nicht angezeigt werden. Ich will jetzt nicht den ganzen Thread durchsuchen, hast du schon einmal unter "Leistung" alle Fremdmodule und Overrides deaktiviert? Link to comment Share on other sites More sharing options...
harald.thomas Posted Monday at 03:01 PM Author Share Posted Monday at 03:01 PM 20 minutes ago, rictools said: Suche nach Gemeinsamkeiten der Artikel, die in der Artikelliste im BO oder im Shop nicht angezeigt werden. Ich will jetzt nicht den ganzen Thread durchsuchen, hast du schon einmal unter "Leistung" alle Fremdmodule und Overrides deaktiviert? hatte ich bereits deaktiviert. da ich keine Gemeinsamkeiten finde, wollte ich sowas wie einen debug log, nur für die Artikel. kann man das evtl. im mysql? Tabellenüberwachung? Link to comment Share on other sites More sharing options...
cocos.codes Posted Monday at 03:57 PM Share Posted Monday at 03:57 PM Änderungen in MySQL können mit sogenannten TRIGGERN überwacht werden. Nachfolgend finden Sie ein vollständiges Beispiel für einen Trigger: -- 1. Wir erstellen eine Audit-Tabelle CREATE TABLE audit_log_products ( id INT AUTO_INCREMENT PRIMARY KEY, tabela VARCHAR(50), operacja VARCHAR(10), rekord_id INT, user_mysql VARCHAR(100), stare_dane JSON, nowe_dane JSON, data_zmiany TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -- 2. Trigger nach INSERT (neues Produkt) DELIMITER // CREATE TRIGGER ps_product_ai AFTER INSERT ON ps_product FOR EACH ROW BEGIN INSERT INTO audit_log_products (tabela, operacja, rekord_id, user_mysql, nowe_dane) VALUES ( 'ps_product', 'INSERT', NEW.id_product, USER(), JSON_OBJECT( 'price', NEW.price, 'quantity', NEW.quantity, 'active', NEW.active, 'date_add', NEW.date_add ) ); END; // DELIMITER ; -- 3. Trigger nach UPDATE (Produktänderung) DELIMITER // CREATE TRIGGER ps_product_au AFTER UPDATE ON ps_product FOR EACH ROW BEGIN INSERT INTO audit_log_products (tabela, operacja, rekord_id, user_mysql, stare_dane, nowe_dane) VALUES ( 'ps_product', 'UPDATE', NEW.id_product, USER(), JSON_OBJECT( 'price', OLD.price, 'quantity', OLD.quantity, 'active', OLD.active, 'date_upd', OLD.date_upd ), JSON_OBJECT( 'price', NEW.price, 'quantity', NEW.quantity, 'active', NEW.active, 'date_upd', NEW.date_upd ) ); END; // DELIMITER ; -- 4. Trigger nach DELETE (Löschen eines Produkts) DELIMITER // CREATE TRIGGER ps_product_ad AFTER DELETE ON ps_product FOR EACH ROW BEGIN INSERT INTO audit_log_products (tabela, operacja, rekord_id, user_mysql, stare_dane) VALUES ( 'ps_product', 'DELETE', OLD.id_product, USER(), JSON_OBJECT( 'price', OLD.price, 'quantity', OLD.quantity, 'active', OLD.active, 'date_add', OLD.date_add ) ); END; // DELIMITER ; So funktioniert es: Jeder INSERT / UPDATE / DELETE in ps_product wird an audit_log_products weitergeleitet. Sie erhalten: Vorgang, Produkt-ID, MySQL-Benutzer, Daten vor und nach der Änderung. Die Daten werden in JSON-Feldern gespeichert → sie lassen sich später leicht analysieren. Link to comment Share on other sites More sharing options...
harald.thomas Posted Monday at 05:31 PM Author Share Posted Monday at 05:31 PM Perfekt, danke, das hilft schonmal weiter. Gibt es zusätzlich noch eine Möglichkeit die aufrufe der urls zu loggen, mit denen Artikel gelöscht werden können, mit ip, z.B. Link to comment Share on other sites More sharing options...
rictools Posted Tuesday at 12:31 AM Share Posted Tuesday at 12:31 AM Ich hatte dich so verstanden, dass alle Artikel in der Datenbank enthalten sind und auch in der Lagerliste, nur nicht in der Artikelliste im BO und teilweise im Shop ... Link to comment Share on other sites More sharing options...
cocos.codes Posted Tuesday at 09:13 AM Share Posted Tuesday at 09:13 AM Das Löschen von Artikeln anhand ihrer URL ist nur über die PrestaShop-API oder ein Modul möglich, das über diese Funktion verfügt. Haben Sie die API aktiviert? Gehen Sie dazu in das Menü ERWEITERTE EINSTELLUNGEN >> Webservice >> API. Sie können auch die Serverprotokolle einsehen – dort werden alle Aufrufe von URLs mit Parametern angezeigt. Link to comment Share on other sites More sharing options...
harald.thomas Posted Tuesday at 02:01 PM Author Share Posted Tuesday at 02:01 PM 13 hours ago, rictools said: Ich hatte dich so verstanden, dass alle Artikel in der Datenbank enthalten sind und auch in der Lagerliste, nur nicht in der Artikelliste im BO und teilweise im Shop ... nee, leider sind die Artikel nicht im Artikelstamm, aber im shop und im backend über die suche windbar. Link to comment Share on other sites More sharing options...
harald.thomas Posted Tuesday at 02:01 PM Author Share Posted Tuesday at 02:01 PM 4 hours ago, cocos.codes said: Das Löschen von Artikeln anhand ihrer URL ist nur über die PrestaShop-API oder ein Modul möglich, das über diese Funktion verfügt. Haben Sie die API aktiviert? Gehen Sie dazu in das Menü ERWEITERTE EINSTELLUNGEN >> Webservice >> API. Sie können auch die Serverprotokolle einsehen – dort werden alle Aufrufe von URLs mit Parametern angezeigt. API ist aus. Dann warte ich mal bis sich die Tabelle mit den Änderungen füllt. Danke. Link to comment Share on other sites More sharing options...
rictools Posted Tuesday at 02:32 PM Share Posted Tuesday at 02:32 PM vor 25 Minuten schrieb harald.thomas: nee, leider sind die Artikel nicht im Artikelstamm, aber im shop und im backend über die suche windbar. Moment, jetzt komme ich nicht mehr mit ... windbar = findbar? Was ist der "Artikelstamm"? Du hattest geschrieben "In der Datenbank sehen alle Artikel gleich aus.", stehen jetzt alle Artikel, die du an anderen Stellen findest, in der Datenbank (ggf. in welcher Tabelle) oder nicht? Man kann nichts finden, was sich nicht in der Datenbank befindet, das geht einfach nicht ... Sorry, es ist einfach wichtig, dass man bei Formulierungen sehr genau ist (und auch Tippfehler korrigiert), sonst sind am Ende alle nur noch verwirrt ... Link to comment Share on other sites More sharing options...
harald.thomas Posted yesterday at 04:43 PM Author Share Posted yesterday at 04:43 PM Sorry, typo nicht gesehen. Artikelstamm ist für mich das, was ich unter Katalog/Artikel sehe. Hier sind aber nicht alle Artikel drin. Wenn ich oben neben dem Schnellzugriff über die Suche suche, dann finde ich Artikel, die nicht in der Übersicht von Katalog/Artikel sind. Diese Artikel sind editierbar und werden im Frontend angezeigt. @cocos.codes: die Trigger sind drin, aber es kommen nur gewollte Eintrage. Link to comment Share on other sites More sharing options...
rictools Posted yesterday at 05:58 PM Share Posted yesterday at 05:58 PM Das ganze bleibt rätselhaft, ich kann mir nach wie vor nur vorstellen, dass du nicht auf Seite 2 etc. weiterschaltest oder dass da ein Filter aktiv ist, mach doch mal einen Screenshot der Artikelseite im BackOffice, auch einen mit geöffneter und erweiterter Kategorieliste. Link to comment Share on other sites More sharing options...
rictools Posted yesterday at 06:05 PM Share Posted yesterday at 06:05 PM vor einer Stunde schrieb harald.thomas: Wenn ich oben neben dem Schnellzugriff über die Suche suche ... Das geht eigentlich nicht, du kannst nicht auf den Suchbutton drücken, ohne zuvor IN der Schnellzugriffleiste in ein Feld etwas eingegeben zu haben. Oder hast du vielleicht nicht die Standardseite, sondern es läuft ein Modul? Link to comment Share on other sites More sharing options...
harald.thomas Posted 8 hours ago Author Share Posted 8 hours ago Hi rictools, hier zwei screenshots, einmal gefiltert nach Namen, sonst keine filter. Ein Artikel , ID 226. Dann einmal über die Schnellzugriffsuche nach Parma. 2 Artikel, ID 226 und 231. Link to comment Share on other sites More sharing options...
rictools Posted 45 minutes ago Share Posted 45 minutes ago Stimmt, da oben ist ja noch eine Suche ... Geh doch mal bei den beiden Produkten auf "Bearbeiten", dann in die Karteikarte "Optionen" und überprüfe die Einstellungen zur Sichtbarkeit. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now