README

Gliederung

  1. Allgemeines
  2. Lizenz
  3. Installation
  4. Möglichkeiten zur Datensicherung
  5. Upgrade von alter Version
  6. Bugs/neue Versionen/Homepage

Allgemeines

Die Version 0.1d der part-db ist nach wie vor ein experimentelles Release. Prinzipiell sollte alles funktionieren, allerdings wurden einige Dinge noch nicht umgesetzt:

Obrige Liste erhebt natürlich keinerlei Anspruch auf Vollständigkeit.

Die meisten der oben genannten Probleme/Sicherheitslücken lassen sich allerdings mit einer Passwortabfrage durch den Web-Server beheben. Stichwort ".htaccess". Für Apache 1.3 siehe http://httpd.apache.org/docs/1.3/howto/auth.html. Für Apache 2.0 siehe http://httpd.apache.org/docs/2.0/howto/auth.html. Gegebenenfalls sollte man dann noch über eine SSL-Verbindung nachdenken.

Neue Versionen gibt es auf der Homepage des Autors: http://www.cl-projects.de/.

Lizenz

Die part-db wird unter der GPL veröffentlicht. Siehe dazu in der beiliegenden Datei gpl.txt oder auf der Seite der Free Software Foundation.

Installation

Auch wenn ich aus Zeitmangel keine Zeit hatte, diese Anleitung zu testen, ich gebe sie dennoch an. Ein einigermaßen erfahrener Nutzer sollte es auch ohne die Anleitung unten schaffen, die Software zu installieren.
  1. Legen Sie eine Datenbank namens part-db an. (Sie können den Namen der Datenbank auch ändern. Werfen Sie dazu einen Blick in die Datei lib.php)
  2. Erzeugen Sie einen MySQL-User mit einem beliebigen Namen. Stellen Sie für diesen Nutzer ein Password ihrer Wahl ein, ein zufälliges Password ist natürlich am besten. Stellen Sie die Zugriffsrechte dieses Nutzers so ein, dass er auf die oben erzeugte Datenbank Vollzugriff und auf die anderen Datenbanken keinen Zugriff hat. Diese Daten müssen Sie in der Datei lib.php entsprechend eintragen.
  3. Die mitgelieferte Datei createtables.sql enthält alle SQL-Anweisungen, um die nötigen Datenstrukturen anzulegen.
  4. Kopieren Sie alle mitgelieferten Dateien in ein Verzeichnis Ihres Webservers. Schützen Sie dieses Verzeichnis mit einem Password (s.o.)
  5. Ausserdem sollten Sie die Zugriffsrechte der Datei lib.php so einstellen, dass nur der PHP-Interpreter sie lesen kann. Dies schützt jedoch noch nicht vor anderen Usern deren PHP-Skripte unter demselben Nutzernamen laufen. Optimal ist es, wenn die Skripte jedes Users unter einem anderen Nutzernamen laufen.
Auf der Internet-Seite gibt es auch einen Setup-Guide!

Möglichkeiten zur Datensicherung

Als Nutzer der part-db sollten Sie -- wie auch als Nutzer jeder anderen Software -- an regelmäßige Backups denken. Regelmäßige Backups gehören mit zu den Pflichten der Nutzer+Admins!

Im Moment verfügt die part-db noch nicht über eine integrierte Backup-Funktion (es ist auch keine geplant!), aber sie können sich mit folgenden Tools behelfen:

Upgrade von alter Version

Nutzer, die von einer alten Version (0.1, 0.1a, 0.1b, 0.1c) auf die Version 0.1d upgraden, müssen vor dem einspielen der neuen Dateien noch einige Änderungen an der Datenbank durchführen. Ein Backup aller Daten ist wie üblich vorher anzufertigen!

  1. Als erstes müssen Sie eine Tabelle "pictures" erzeugen. Wie der Name verrät, geht es um den hinzugefügten Support für Bilder.
    Führen Sie dazu in der richtigen Datenbank folgende MySQL-Abfrage aus:
    CREATE TABLE `pictures` (
    	`id` int(11) NOT NULL auto_increment,
    	`part_id` int(11) NOT NULL default '0',
    	`pict_fname` varchar(255) NOT NULL default '',
    	`pict_width` int(11) NOT NULL default '0',
    	`pict_height` int(11) NOT NULL default '0',
    	`pict_type` enum('P','T') NOT NULL default 'P',
    	`tn_obsolete` smallint(6) NOT NULL default '0',
    	`tn_t` datetime NOT NULL default '0000-00-00 00:00:00',
    	`tn_pictid` int(11) NOT NULL default '0',
    	`pict_masterpict` smallint(6) NOT NULL default '0',
    	PRIMARY KEY  (`id`),
    	KEY `pict_type` (`pict_type`)
    ) TYPE=MyISAM;

    Außerdem müssen Sie im Verzeichnis der part-db, d.h. das Verzeichnis in dem die Dateien der part-db (z.B. lib.php) liegen ein neues Unterverzeichnis "img" und im Verzeichnis img ein Unterverzeichnis "tn_cache" anlegen. Beide Verzeichnisse müssen für den Webserver beschreibbar sein!

  2. Die neue Version 0.1d enthält außerdem den vielfach gewünschten Support für manuelle Preiseingabe. Hierzu müssen Sie zwei weitere SQL-Befehle ausführen:
    ALTER TABLE `preise` ADD `ma` SMALLINT NOT NULL AFTER `part_id`;
    ALTER TABLE `preise` ADD INDEX (`ma`);
  3. Für zukünftige Erweiterungen (die in der internen Entwickler-Version teilweise schon implementiert sind) sind noch weitere Veränderungen erforderlich:
    CREATE TABLE `pending_orders` (
    	`id` int(11) NOT NULL auto_increment,
    	`part_id` int(11) NOT NULL default '0',
    	`quantity` int(11) NOT NULL default '0',
    	`t` datetime NOT NULL default '0000-00-00 00:00:00',
    	PRIMARY KEY  (`id`),
    	KEY `part_id` (`part_id`)
    ) TYPE=MyISAM;

Homepage

Die Homepage des Autors der part-db ist http://www.cl-projects.de/. Dort können Sie auch Bugs melden.

Ich wünsche mir natürlich *viel* Feedback, d.h. was funktioniert hat, was zu verbessern ist, was fehlt etc.


Copyright by C. Lechner, 2005-2006.