Update des Shops ================ PhPepperShop Version 2.0: Update -------------------------------- Dieses Update des Shops betrifft sowohl das Installationsprogramm und die PHP-Scripte als auch die Datenbank. Man kann dieses Update von der Shopversion v.1.5 (mit oder ohne Service Pack 1) aus angehen. Ältere Shopversionen müssen zuerst auf die Shopversion 1.5 upgedated werden. Dieses Shopupdate übernimmt folgende Daten aus dem bestehenden PhPepperShop v.1.5: - Artikel - Kategorien, - Kunden - Bestellungen - Shop-Konfiguration [- Layouteinstellungen] Um den Shop updaten zu können, muss zusätzlich noch die Datei v20_update.sql heruntergeladen werden. Wenn man den PhPepperShop v.1.5 mit zwei Datenbankbenutzern betreibt (zu sehen in der Rubirk 'Shop Konfiguration ansehen' in der Shopadministration), so muss man zusaetzlich noch die Datei v20_update_zwei_db_user.sql herunterladen. Wir empfehlen das Update ohne Übernahme der alten Layout-Einstellungen zu machen. Falls aber jemand seine Einstellungen in den neuen Shop übernehmen möchte, so kann er dies tun, indem er anstatt v20_update.sql die Datei v20_update_altes_layout.sql benutzt. Einfach in allen noch folgenden Punkten den Namen v20_update.sql durch v20_update_altes_layout.sql ersetzen. Wir möchten an dieser Stelle darauf hinweisen, dass man das Layout besser nochmals neu gestalten sollte, da die Einstellungs- möglichkeiten im neuen Shopsystem sehr stark erweitert wurden. Alle Dateien sind im Downloadbereich zu finden (http://www.phpeppershop.com/index_download.html). !WICHTIG!: Wenn man den v.1.5 PostFinance Patch eingespielt hat, muss man die Datei v20_update.sql bearbeiten und die folgende Zeile darin löschen (da das Tabellen-Feld durch den PostFinance-Patch schon angelegt worden ist): ALTER TABLE `bestellung` ADD `Bestellung_extern_abgeschlossen` ENUM('N','Y') NOT NULL DEFAULT 'N' AFTER `MwSt`; 1.) Wenn man eigene Shopbuttons und Hintergründe erstellt hat und verwendet, sollte man von diesen Dateien zuerst ein Backup erstellen (siehe Anleitung 'PhPepperShop Dokumentation Manuals'). Wenn man diese Dateien noch ausserhalb des Shopver- zeichnisses gespeichert hat, kann man auf das Backup auch verzichten. Auch sollte man via Shop-Backup, phpMyAdmin oder z.B. mysqldump noch ein Backup der Datenbank anlegen, sodass man im Notfall den alten Zustand des Shops schnell wieder- herstellen kann. 2.) Sicherheit: Sind noch alle Angaben, welche bei der Installation des Shops benutzt wurden vorhanden? Wenn nicht, schauen Sie sie bitte nochmals nach (Dateien shopname_create.sql, initialize.sql, ADMIN_initialize.sql). Die Eingaben müssen bei der erneuten Installation (Teil des Updatevorgangs) nochmals getätigt werden. Gemeint sind folgende Daten: Datenbankbenutzername, Passwort des Datenbankbenutzers, Name des Datenbankrechners, Name der Shopdatenbank. Beim Betrieb mit zwei Datenbankbenutzern sind zusätzlich noch der Benutzername und das Passwort des Kunden-Datenbankbenutzers gefragt. 3.) Das alte Shopverzeichnis sollte man aus Sicherheitsgründen zuerst umbenennen und erst NACH erfolgreichem Update löschen (Zuerst also in der Konsole schreiben: mv shopname shopname_old, oder via FTP eine Kopie davon herunterladen). Auch von der aktuellen Shopdatenbank sollte man (z.B. via phpMyAdmin oder Shop DB-Backup) ein Backup sicher hinterlegen. 4.) Externe PhPepperShop Module: Falls man externe PhPepperShop Module benutzt, so sollte man diese deinstallieren und nach dem Upgrade aktualisierte Versionen neu einspielen. Nehmen Sie hierbei am besten mit dem jeweiligen Modulhersteller Kontakt auf. Anmerkung: Beim Deinstallieren gehen alle dieses Modul betreffende Informationen in der Datenbank verloren. 5.) Hier teilt sich die Aufgabenstellung, je nach vorheriger Shopinstallation (Anm. Windows Anwender müssen in jedem Fall den Weg 'Installation OHNE Telnet/SSH' wählen): a) Installation via Telnet/SSH: Wir installieren nun den neuen Shop (folgende Zeilen bitte sehr genau durchlesen, Gefahr von Datenverlust!): - Den PhPepperShop v.2.0 und die Datei v20_update.sql herunterladen von http://www.phpeppershop.com/index_download.html - Beim Betrieb mit zwei DB-Benutzern zusätzlich noch die Datei v20_update_zwei_db_user.sql herunterladen - Den Shop Sourcecode im Webverzeichnis entpacken und ins entpackte Verzeichnis phpeppershop_src wechseln - perl ./config.pl aufrufen und damit die Installationsroutine starten (Achtung: config.pl lässt sich NICHT via Browser starten, es muss via Kommando in einer UNIX-Shell aufgerufen werden!) - Beim Teil 5 der Installation, wo es um das Einfügen der Datenbank ins MySQL-DBMS geht, muss man UNBEDINGT n für NEIN wählen, da die schon existierende v.1.5 Datenbank später speziell auf den Shop v.2.0 upgedated wird. - Es wurde nun ein Shop erzeugt, dieser liegt im Verzeichnis mit dem Namen der Datenbank (ev. also noch umbenennen). - Zum Abschluss muss jetzt noch das Datenbank Update laufen gelassen werden: Dazu muss man die Datei v20_update.sql ins MySQL-DBMS einlesen. Dies kann man entweder via phpMyAdmin oder einem ähnlichen Tool erledigen, oder man kann es via Shell mit folgendem Befehl machen: mysql -u dbuser -p [-h dbhost] dbname < ./v20_update.sql dbuser durch den Datenbank user ersetzen, -h dbhost wird nur benötigt, wenn die Datenbank auf einem anderen Rechner liegt als der, auf dem man den Shop jetzt installiert, dann muss dbhost durch den Hostnamen des Rechners ersetzt werden, dbname durch den Namen der Datenbank ersetzen. ACHTUNG: Das Ausführen der v20_update.sql kann abhängig von der Anzahl Artikel im Shop sehr lange dauern, da einige neue Indizes aufgebaut werden. Dies kann phpMyAdmin mit einer moderaten max_execution_time schnell überfordern und dann zu Problemen führen! Falls man sehr viele Artikel besitzt sollte deshalb Kontakt mit dem Provider aufnehmen und ihn bitten die Datei v20_update.sql via Kommandokonsole einzulesen. - Wenn man den PhPepperShop mit zwei Datenbankbenutzern betreibt müssen wir noch spezielle Rechte für den kundenseitig verwendeten, nicht privilegierten Datenbankbenutzer einlesen. Dies machen wir mit der SQL-Datei v20_update_zwei_db_user.sql. Bevor wir diese aber laufen lassen können, müssen wir sie bearbeiten und folgende Begriffe ersetzen: {hostname} => Rechnername des Datenbankrechners, {shop_db} => Name der Shopdatenbank {shopuser} => Name des nicht privilegierten, kundenseitig verwendeten, zweiten Datenbankbenutzers, {grantor} => Name des Benutzers, mit welchem diese SQL-Datei eingelesen wird (z.B. root) Beim ersetzen müssen die geschweiften Klammern {} mit ersetzt werden, die doppelten Anführungszeichen aber nicht! b) Installation OHNE Telnet/SSH -> via FTP und Anleitung 'Installation ohne Telnet/SSH': - Zuerst sollte man den neuen Shop (v.2.0) herunterladen und entpacken. Man muss nun nochmals (etwas mühsam) in einem Editor gemäss der Anleitung 'Installation ohne Telnet/SSH' alle Einstellungen an den Scripts vornehmen. Es muss aber vorerst nur das Kapitel 5 durchgearbeitet werden. - Nun muss man alle neuen Shopdateien hochladen (an genau den Ort, bei welchem zuvor die alte Shopversion abgespeichert war) - Nun muss nach der Anleitung 'Installation ohne Telnet/SSH' das Kapitel 8 durchgearbeitet werden: Datei- und Verzeichnisrechte setzen. Dies ist ein wichtiger Punkt, welcher UNBEDINGT sorgsam erledigt werden muss. - Zu aller letzt muss jetzt noch das Datenbank-Update ausgeführt werden. Dazu liest man die SQL-Datei v20_update.sql via phpMyAdmin oder einem ähnlichen Tool (wird vom Provider zur Verfügung gestellt) in seine MySQL Datenbank ein. 6.) Nun müssen folgende Administrationsmenüs geöffnet und ihre Einstellungen überprüft werden. Zuerst gehen wir in die neue Shopadministration (via Webbrowser) und klicken dort als aller erstes auf die Rubrik 'Shop Konfiguration ansehen'. Hier gehen wir ganz nach unten und klicken dort auf den Link, der mit 'Datenbank aufräumen' betitelt ist. ES IST WICHTIG, DASS DIES DER ERSTE SCHRITT IN DER ADMINISTRATION IST! Nun MÜSSEN folgende Formulare gespeichert werden, damit der Shop in einen konsistenten Zustand kommt - Allgemeine Shopeinstellungen (Hier bitte alle Einstellungen nochmals überprüfen!) - Layout Management -> hier gleich auf Speichern klicken und erst nach diesem Vorgang Änderungen anbringen - MwSt Management (nur falls aktiviert / falls der Shop MwSt-pflichtig ist) - Kundenattribute bearbeiten -> Bitte die Einstellungen überprüfen, im Speziellen die zusätzlichen Felder - Währungseinstellungen -> Hier bitte die in Ihrem Shop verwendete Währung[en] aktivieren - Shopbuttons (Knöpfe) hochladen -> Hier bitte alle Buttons überprüfen, es gibt jetzt ja auch noch viele neue Buttons Um einen bestehenden .htaccess Schutz weiter zu verwenden, einfach die Datei .htaccess (und falls vorhanden auch .htpasswd) vom {alter_shop}/shop/Admin-Verzeichnis kopieren und im neuen Shopverzeichnis wieder im Admin Unterverzeichnis ablegen. Achtung: Da das Versandkostenmanagement durch das neue Menü 'Lieferländer und Versandarten' ersetzt wurde, muss man nun in diesem Untermenü alle Einstellungen korrekt übernehmen. Nun noch die Produktebilder (altershop/shop/ProdukteBilder Ordner) und die ProdukteDetails (altershop/shop/ProdukteBilder Ordner) in den neuen Shop kopieren. 7.) Falls man eine eigens angepasste Startseite verwendet hat, muss man die speziell in den neuen Shop übernehmen. Da die neue Shopversion 2.0 keine Frames mehr einsetzt, darf die Startseite keinen HTML-Header und body-Tags mehr besitzen. Das heisst, man öffnet die Startseite ({alter_shop}/shop/language/de/content.html) und kopiert den Inhalt zwischen und heraus (ohne die body-Tags!) und fügt den Inhalt in das neue Startseite Template: {neuer_shop}/shop/language/de/html_templates/ content.tpl.html. Falls der Shop mehrsprachig eingesetzt wurde, sollte man diesen Vorgang für alle verwendeten Sprachen wiederholen (dann in den Pfaden de durch die jeweilige Sprache ersetzen - z.B. en für Englisch). Die Startseite kann später bequem in der Shopadministration bearbeitet werden (Untermenü: Startseite & Footer bearbeiten). 8.) Falls man den PhPepperShop mit eingeschalteter Mehrsprachigkeit betreibt: Da auch die jeweiligen Übersetzungsdateien geändert haben, muss man auch diese überarbeiten, falls man selbst Textänderungen vorgenommen hatte. Die Dateien befinden sich immer noch am selben Ort: {shopverzeichnis}/shop/language/xy/localetext.inc.php, wobei xy für den Sprachcode steht - z.B. de für Deutsch oder fr für Französisch. Anmerkung: Ev. ist eine v.1.5 Sprachdatei noch nicht für die Shopversion 2.0 verfügbar! Die Sprachsets findet man hier: http://www.phpeppershop.com/sprachsets/sprachsets.php. 9.) Layout Hinweise: Da die HTML-Templates des PhPepperShops sehr stark geändert haben, kann man bearbeitete PhPepperShop v.1.5 HTML-Templates nicht mehr im Shopsystem v.2.0 einsetzen. Eigene Änderungen muss man nochmals neu einarbeiten. Die Layout- Management Einstellungen werden nur dann komplett übernommen, wenn man v20_update_altes_layout.sql anstatt v20_update.sql verwendet - was wir ausdrücklich nicht empfehlen. Informationen zur Verwendung der Templates findet man im Shopadministrations- hauptmenü unten auf Hilfethemen klickt und im neu aufgegangenen Fenster auf 'Verwendung des PhPepperShop Templatesystems'. Hier und im Hilfetext des Layout-Managements erfährt man auch Details über die Struktur des PhPepperShop Designs. Hinweise zur Deinstallation: Man kann das Update NICHT mehr rückgängig machen! (D.h. man könnte schon, aber wir bieten dafür keinen automatisierten Mechanismus an) Deinstallation, allgemeiner Teil: Zuerst in der PhPepperShop Administration im Untermenü 'Externe PhPepperShop Module' alle Module deinstallieren. a) Deinstallation via Telnet/SSH: - Mittels Aufruf von perl remove.pl kann der PhPepperShop auf der Kommandozeile Menü geführt deinstalliert werden. b) Deinstallation OHNE Telnet/SSH: - Um den Shop zu deinstallieren, wenn man via FTP und der Anleitung 'Installation ohne Telnet/SSH' gearbeitet hat einfach die SQL-Datei /templates/template_del_tables_only.sql ausführen. Es werden daraufhin alle Shoptabellen gelöscht. Nun kann auch das PhPepperShop-Verzeichnis gelöscht werden und der Shop ist somit deinstalliert. --> Falls Probleme auftreten sollten --> FAQs / Forum auf http://www.phpeppershop.com/ (bitte die vorherige Shopversion erwähnen). ------------------------------------------------------------------------------ Datei Informationen =================== PhPepperShop, v20_update.txt, fjo Autoren: ©2001-2005, Jose Fontanil, Reto Glanzmann Version 2.0, basierend auf ER-Diagramm v.2.0.0 CVS-Version / Datum: $Id$ (22.12.2005) Sicherheitsstatus: *** ADMIN *** Updateanleitung (v.1.5 --> v.2.0) <>