Notice: session_start() [function.session-start.php]: ps_files_cleanup_dir: opendir(/var/cache/php-sessions) failed: Permission denied (13) in /home/grobmark/www/softwaredb/index.php on line 11
SoftwareDB
Suche starten

Suchoptionen

Geschichte des Projektes

Damit das Ganze dokumentiert ist, schreibe ich hier die Vorgänge und Ideen geordnet nach Datum herein.
Diese Daten werden zur Zeit nur auf deutsch veröffentlicht.

02. Mai 2018

Allgemeines

Damit es bei Texten mit vergessenen Leerzeichen am Anfang oder Ende nicht zu "Problemen" kommt, werden diese fix eingefügt. Dazu müssen aber alle Texte manuell durchgegangen werden. Dies dauert seine Zeit. Nebenbei werden auch alle echo-Ausgaben so angepasst, dass die Texte einheitlich ausgegeben werden, auch wenn dies eine Verkettung der Argumente benötigt.

17. April 2018

Allgemeines

Die automatische Uebersetzung der Texte geht weiter. Nun ist die Webseite soweit bereit, dass man Texte auch übersetzen kann. Nun müssen die Textsourcen noch angepasst werden, so dass diese auch automatisch verarbeitet werden können.

Die Verarbeitung bewirkte auch eine kleine Anpassung in den Headern. So ist das Format nun einheitlich Y-m-d.

24. März 2018

Allgemeines

Mit der Ueberarbeitung der Logbücher wurden nun an allen relevanten Orten auch Abfragen auf ungültige SQL-Abfragen erstellt.
Nun werden alle Aenderungen an den Daten in der Tabelle log_change festgehalten.

Der Text wird nun auf Array umgestellt, damit man über die Webseite selbständig Text in neue Sprachen übersetzen kann. Das entsprechende GUI wird noch programmiert. Im Hintergrund wird dann dem Uebersetzer der Text zur Verfügung gestellt, welcher dann übersetzt wird.
Mittels Datumsstempel wird geprüft ob ein Eintrag neu, veraltet oder aktuell ist.

07. März 2018

Allgemeines

Im Code wurde auf absolute Tabellen-Nummern verwiesen. Dies wurde nun mittels Abfrage umgestellt. Die Nummern dürfen sich durch die Verweise zwar nicht ändern, doch die indirekte Referenzierung mittels Prozedur ist sauberer.

02. März 2018

Allgemeines

Beim Testen wurde festgestellt, dass der Benutzername noch an mehreren Stellen umgestellt werden musste. Im Zuge dessen wurde auch die Benutzerverwaltung getestet und musste wegen den nun eingebauten Referenzen in den Logbüchern erweitert werden, damit nur Benutzer gelöscht werden, welche nicht relevante Aenderungen gemacht haben. Bei diesen Benutzern muss eine manuelle Löschung beantragt werden. Zur Zeit wird es aber sehr grosszügig aufgefasst und einfach gelöscht.

Unklarheiten / Ideen

Die Logbücher sollten noch angepasst werden, so dass man einfacher zwischen Loginvorgängen und Anpassungen unterscheiden kann, damit schlussendlich einfacher festgestellt werden kann, ob ein Benutzer aus datentechnischen Gründen einfach gelöscht werden darf.

27. Februar 2018

Allgemeines

Nach längerer Pause nun wieder eine grössere Umstellung. Der Benutzername wird nun nur noch verwendet, wenn nötig und sonst läuft alles über die ID. Gemacht wurde, weil das Logging erweitert wurde, um auch für IPV6 tauglich zu sein. Im Rahmen dessen wurde kommplett umgestellt, dass nur noch die ID geloggt wird und entsprechend mussten alle Funktionsaufrufe angepasst werden. Dazu wurden noch Konstanten eingeführt, welche ein einheitliches Logging garantieren. Das brauchte etwas Effort, doch nun läuft es wie vorher, nur einheitlicher.

Um die Datenbank konsistenter zu halten, werden die Fremdschlüssel nun gesetzt, so dass beim Löschen Untereinträge mitgelöscht werden und man im Gegenzug nicht einfach wichtige Einträge wie etwa eine Sprache löschen kann, wenn noch Einträge darauf verweisen.
Im Zuge der Durchsicht wurden auch die IDs der Tabellen vereinheitlicht, so dass es nun nur noch Standardtypen gibt.

12. Mai 2017

Allgemeines

Die Suche habe ich nun noch weiter umgestellt. Jetzt wird erst nach 100 Treffern abgebrochen. So werden mehr Resultate eingeblendet.

Unklarheiten / Ideen

Die Suche sollte so angepasst werden, dass viel mehr gesucht wird und zwar zuerst alle Elemente ohne * und erst anschliessend mit *.
So werden exakte Treffer zuerst zurück gegeben. Wenn dazu noch die Anzeige mit mehreren Seiten implementiert ist, kann die Suche auf 1000 erweitert werden.

05. Mai 2017

Allgemeines

Nun funktioniert die Suche so, dass automatisch mit dem Stern gesucht wird, falls es keinen Treffer gibt. Dies wird dann ausgeweitet, bis die ganze DB durchsucht wird. Abgebrochen wird nur, falls es Treffer gibt.
Dazu wird nun in den meisten Fällen bei einer Bearbeitung eines Eintrags wieder zurück zum ursprünglichen Element gegangen, wenn man abbrechen betätigt.

16. April 2017

Allgemeines

Unterdessen kann man die meisten Daten auch an fertige Dateien hinzufügen. Das heisst, man kann erweitern und dabei nicht vorhandene Einträge ergänzen. Es fehlen noch ein paar Einheiten und auch das nachträgliche Anhängen von Dateien ist noch nicht implementiert, doch ich arbeite daran.
Im Laufe der Tests wurden auch einige Fehler entdeckt und ausgemerzt. Bei einem Test wurde aber die falsche Tabelle gelöscht, so dass nun wieder alle Beiträge nochmals erfasst werden müssen. Naja, kanns geben. Ist ja eine Testumgebung ;-) Später gibt es dann ein Backup, das in solchen Fällen wieder aktiviert werden kann.

Unklarheiten / Ideen

Neben den bestehenden Logbüchern braucht es ein Auditlogbuch, in dem alle Aktivitäten aufgezeichnet werden. So kann ein Missbrauch schneller entdeckt und Änderungen wieder rückgängig gemacht werden.

13. März 2017

Allgemeines

Die Modifikationen sind soweit fertig implementiert. Dies bedeutet, man kann Änderungen vornehmen, übersetzen, Verknüpfungen zu bestehenden Komponenten herstellen oder die Verknüpfungen löschen. Dazu können nun komplette Einträge mit Abhängigkeiten gelöscht werden, falls diese falsch erfasst wurden(Spam usw.)

17. Januar 2017

Allgemeines

Der Upload wurde verifiziert, so dass es bei einem gewöhnlichen Upload nicht mehr zu Fehlern kommt. Dazu zeigt die Suche nun alle möglichen Feldern korrekt an und es erscheinen auch schon die Buttons zur Modifikation, wenn man eingeloggt ist. Deren Funktion muss aber noch fertig implementiert werden.

05. Dezember 2016

Allgemeines

Jetzt ist es so weit. Man kann eine Software mit allem korrekt abspeichern. Zusätzlich wurde im Hintergrund noch einiges umgestellt, damit alles effizienter laufen sollte und auch die Suche läuft nun runder, auch wenn noch nicht alles korrekt gefunden wird, doch dies ist dann Aufgabe von erweiterten Tests.

01. Dezember 2016

Allgemeines

Endlich kann man alles korrekt eingeben ohne Fehler. Es werden auch alle wichtigen Daten angezeigt. Nun fehlt nur noch die Speicherseite, damit alle Daten auch korrekt abgelegt werden, so dass einem Betatest nichts mehr im Wege steht.

Spezielles

Beta-Tester aufgepasst: Der Zurück-Button funktioniert bei den Screenshots und Medien noch nicht zufriedenstellend. Es werden nicht immer alle Daten korrekt übernommen, wenn man anschliessend weiter geht. Daher diese Funktion an diesem Punkt bis auf weiteres nicht verwenden, wenn man Daten hochladen möchte.

22. November 2016

Allgemeines

Der Dateiupload funktioniert. Zur Zeit gilt der Feinschliff den mehreren Screenshots und Medien gleichzeitig, damit die Seiten alle Daten sauber verarbeiten, auch wenn jemand spielt.

18. Februar 2016

Allgemeines

Es ist wieder viel Wasser den Rhein runter geflossen. Die Einträge können nun komplett gespeichert werden und auch Screenshots und Medien können verknüpft werden. Die Speicherung hakt noch etwas wegen der md5-Summe, doch dies sollte bald behoben sein, da diese Arrays nun getrennt wurden.
Je nach Dateityp wird nun automatisch gezippt, wenn es nicht schon ein zip ist. Ausnahmen bilden nur Screenshots. Auch ein einlesen einer Disk zwecks Vergleich, ob diese schon einmal hochgeladen wurde, ist nun möglich.

14. Juli 2014

Allgemeines

Mit erneuter Euphorie im letzten Monat die Erfassung neuer Komponeten fertig gestellt. Nun kann eine Software erfasst werden und dabei können alle notwendigen Subkomponenten gleich miterstellt werden.
Dateien werden geprüft und es ist so möglich, auch mehrere Softwaren auf einer gezippten Disk ohne mehrmalige Erfassung zu speichern und auch wieder herunterzuladen(dies zur Zeit nur mit einem generierten Dateinamen).
Die gesamte Erfassung ist nun Server unabhängig und die Dateien werden in den jeweiligen Hardware Verzeichnissen abgespeichert.

Die Suche wurde angepasst. Es wird nun standardmässig nur nach Software und Hardware gesucht. Sonst muss die erweiterte Suche benutzt werden.

Einträge löschen oder übersetzen ist vorbereitet, doch noch nicht implementiert.

Dazu mit Knorpi einen ersten Tester gefunden. Wer gerne Schach spielt: Schach Webseite

Nachtrag vom 17.04.2018: Leider ist die Webseite durch den plötzlichen Tod des Seitenbetreibers nicht mehr aktiv. RIP!

22. Februar 2013

Allgemeines

Design fertig umgestellt auf etwas mehr Farbe, dafür dezent. Die Seite ist nun farblich unterteilt und das Suchmenü schön mittig.
Dazu wurden die Webseiten zum Teil überarbeitet mit eigenem Titel und auch, ob sie sauber funktionieren. Folgende Seiten sollten nun so weit fertig sein:
Startseite, Einführung, Mailkontakt, Mysoftwaredb, Registrieren und die Geschichte. Weiter geht es mit dem RSS-Blog...

13. Februar 2013

Spezielles

Umstellung von mysql auf mysqli.

18. Juli 2012

Allgemeines

Anpassung der Logdateien. Nun werden vermehrt auch fehlerhafte Anfragen geloggt.
Erweiterung auf Medien, so dass man auch Bücher, Filme als eigenständige Artikel speichern kann. Damit können Bücher auf Hardware und/oder Software verweisen, sind aber in sich unabhängig von einer bestimmten HW oder SW.

16. Juli 2012

Allgemeines

Intern werden nun alle Anfragen mit dem Benutzernamen oder mit der IP gespeichert.
Die Seiten enthalten im Header nun auch eine Zeile an der man ersieht, wann sie zum ersten Mal erstellt wurde. Da manche Dokumente aus einem früheren Projekt stammen, ist das Erstellungsdatum nicht mehr direkt nachvollziehbar und es wurde die erste sichere Verwendung genommen. Aus diesem Grund sind manche Sprachdateien älter als die entsprechende Webseite.

10. Juli 2012

Allgemeines

Neu können auch Definitionen erstellt werden, welche Begriffe erläutern. Zusätzlich werden nun Attachements ermöglicht und dies in beliebiger Anzahl.
Die Suche wurde erweitert, so dass man nun direkt in Kategorien forschen kann(noch nicht fertig). Dazu ist die Suche nach Hardware als Extrapunkt möglich.

10. Juni 2012

Allgemeines

Das versenden von neuen Passwörtern wird implementiert. Dazu das Design der Hilfelinks etwas überarbeitet und für den Versand die Spalte Telefonnummer integriert. Bald sollten die Hintergrundarbeiten fertig sein, so dass man mit dem Testen beginnen kann.

Unklarheiten / Ideen

Während das Passwort versenden implementiert wird, können noch keine SMS versandt werden(automatisch). Währe sicher eine Option, doch zur Zeit ist es manuell angedacht.

09. Juni 2012

Allgemeines

Nach einem kleinen Variablenfehler kann man sich auch wieder anmelden. Dazu noch unnötige Klammern entfernt. Nun noch das Ganze hochladen und dann weiter implementieren.

Unklarheiten / Ideen

Es fehlt noch das versenden eines neuen generierten Passworts an die definierte Mailadresse oder an ein Handy. Das Ganze natürlich mit Einmalanmeldung und neu zu definierendem Passwort. Nun zur Zeit genügt das händische Rücksetzen. Muss ich halt jetzt durchführen, da die alten Passwörter nicht mehr gültig sind.

08. Juni 2012

Allgemeines

Endlich konnte ich die Verschlüsselung umstellen. Nun ist nicht mehr MD5 gesalted über mehrere Runden, sondern blowfish über phpass. Nun hoffe ich, dass die Implementation eine Weile sicher ist :-)

07. Juni 2012

Allgemeines

Heute eine Weile mit css gespielt. Nun wird der Hintergrund über Gradienten gesetzt und es braucht nicht einmal Bildchen dazu. Dazu das css erweitert und extra mit Chrome und IE8 getestet. Werde wohl irgendwann auf Win7 wechseln müssen, damit ich auch neu MS IE testen kann. Wäre schön, wenn dann die browserspezifischen Anpassungen -webkit usw. rausfallen könnten. DOch wenigstens kann ich auf Browserweichen verzichten :-)

16. Februar 2012

Allgemeines

Wahnsinn. Über 2 Jahre seit dem letzten Eintrag Natürlich lief manches dazwischen, doch man nimmt sich einfach keine Zeit zur Dokumentation. Durch ein anderes Projekt habe ich manche Erkenntnisse dazugewonnen und den Code etwas umgebaut. Dazu wird das Passwort besser verschlüsselt, damit eine Datenpanne wie bei anderen Projekten sich nicht schlimm auswirkt. Da kaum relevante Daten gespeichert werden, wäre dies zwar nicht tragisch, doch es sollte nicht sein und daher schaue ich, die Sicherheit so hoch zu setzen, wie es mir möglich ist.

Gewisse Daten können nun hochgeladen werden und auch Dateien sind erlaubt, doch es muss nun noch alles zusammengesetzt werden und auch die Ausgabe ist noch katastrophal. Dies wird nun angegangen, Schritt um Schritt ;-)

15. Dezember 2010

Allgemeines

Endlich geht es wieder vorwärts. Hinzufügen bleibt in englisch. Dafür kann man nun die Einträge auflisten, die schon in der Datenbank sind, damit man nicht etwas doppelt macht.

15. Juli 2010

Allgemeines

Jetzt funktioniert die Seite auch über https. War nicht einmal so schwer wie gedacht, auch wenn die Angaben aus diversen Anleitungen zusammengesucht werden mussten.
Dazu ist die add-Seite fast fertig. Leider funktionieren die Kategorien noch nicht zufriedenstellend. Notfalls muss halt doch AYAX verwendet werden, um die Kategorien sauber darzustellen.
Das hinzufügen ist ausser bei den Kategorien und der Software fertig und auch rudimentär getestet. Die Software ist in der Entwicklung und bald wartet die Seite mit den Änderungen und Auflistungen vorhandener Einträge und danach die Suche und Darstellung, welche anschliessend beim Betrachten das Ändern des Eintrages ermöglichen sollte.
Es gibt wieder einmal viel zu tun. Warten wir ab, OpenSuse 11.3 wurde veröffentlicht. Da könnte man doch etwas installieren...

06. Juli 2010

Allgemeines

Das Hinzufügen der Kategorien war schwieriger als vermutet. Wenigstens funktioniert es nun fast schon. Hoffe, dass es auch korrekt ist ;-)

Unklarheiten / Ideen

Die ganzen Abfragen für die Kategorien könnte man sicher auch dynamisch lösen mit Javascript, so dass es keine Tabelle mehr braucht oder mit AJAX. Doch dies kann man später erledigen.
Dazu könnte man die Aufrufe noch rekursiv machen, dann könnte man auf die verschachtelten FOR-Schlaufen verzichten.

24. Juni 2010

Allgemeines

Code vereinheitlicht. Dazu mysql_freeresult() entfernt, da es für die kleinen Abfragen nicht notwendig ist. Mögliche Schleife beim Logging entfernt. Nun wird nicht mehr rekursiv aufgerufen.

Begonnen mit add_software, welches für alles Hinzufügen zuständig ist. Geändert wird dann beim Eintrag direkt. Nun geht es ans Eingemachte, da diese Funktionen die ganze Logik der Eingabe ausmachen.

So schnell kanns gehen. Da will man alles vereinheitlichen und ersetzt nach TRUE und FALSE auch die Gleichheitszeichen. Das heisst, man versucht, überall Abstände reinzumachen. Am Schluss bemerkt man, dass man aller Code auf einer senkrechten Linie steht, da man alle Space entfernt hat. Naja, nun ist fast alles wieder eingerückt und nebenbei wurden noch kleinere Kommentare hinzugefügt.

22. Juni 2010

Allgemeines

Passwortprüfung implementiert. Nun muss es gewissen Kriterien genügen. Dazu eine IP-Verifikation bei der Passwortprüfung eingebaut. Nun werden IPs gesperrt, welche Passwörter durch Erraten herauszufinden versuchen.
Dazu wurden bei allen Funktionen die entsprechende Datei hinterlegt, so dass man gleich weiss, wo sie zu finden ist.

15. Juni 2010

Allgemeines

Benutzerverwaltung fertig implementiert. Dazu werden die Aktivitäten korrekt geloggt. Dazu einen automatischen Timestamp in alle Tabellen eingefügt.

11. Juni 2010

Allgemeines

mysoftwareDB fertig implementiert. Dazu Updatefunktion ausgelagert, damit Code schlank. Benutzerverwaltung weiter implementiert.

02. Juni 2010

Allgemeines

Nach div. kleinen Anpassungen funktioniert nun das Login korrekt. Auch das Registrieren läuft sauber. Nun kann es ans Eingemachte gehen, da alle Vorbereitungen soweit abgeschlossen sind.

Unklarheiten / Ideen

Folgende Punkte sind noch zu implementieren:
Erweiterte Suche: List all possibilities for searching to select, Time of the software, Time of setting in the db, List for an editing person
mysoftwareDB: List all own entrys, Bugreports, List own project, Add project
Project(is listed, no own menu): edit Project, delete Project(Spamentry), lock Project(abuse), lock user(abuse)

20. Mai 2010

Allgemeines

Die Navigation angepasst. Das war etwas, bis ich merkte, dass man den Anker einfach hinten im Link eingibt nach den Variablen. Dank des Internets ist jetzt auch das erledigt. War früher kompliziert und unnötig drin und durch Redesign wurde es bemerkt und entfernt.
Dazu freelance überarbeitet und erweitert. Auf dieser Seite werden die Arbeiten vorgestellt, die jeder übernehmen kann.

19. Mai 2010

Allgemeines

Ach ja, alle Sprachausgaben beginnen mit $text_. Dies sollte als Konvention beachtet werden.

Habe sonst recht viel vom früheren Projekt bei der Geschichte entfernt. Unterdessen ist es ja schon -2min. vor dem heutigen Datum :-)
Bemerke beim Durchlesen immer mehr, wie viel Arbeit im Projekt schon drin steckt durch die Übernahme von myheaven. Wie gut, dass ich auf viel Vorarbeit zurückgreifen kann und mir so viele Sucharbeit erspart bleibt, auch wenn die Fehlersuche durch Seitenanpassungen doch immer ein rechtes Stück Zeit in Anspruch nimmt.

Unklarheiten / Ideen

Eine Seitennavigation wäre sicher noch hilfreich, damit sich die Leute zurechtfinden und dazu eine Fahne der Sprache. Dies ist aber mehr ein Gag und daher weniger wichtig.

Der Parser sollte folgendes berücksichtigen:

Die Anweisungen erfolgen mit dem Gleichheitszeichen( = ). Bp.: break = 100 -> Abbruch nach 100 Resultaten. Die Parameter sind natürlich erweiterbar. Die Auswertung erfolgt dann im php. Dazu braucht es: all = TRUE -> in allen Sprachen suchen und exact = yes -> das Wort wird exakt gesucht. exact = case -> Exakte Suche mit Gross und Kleinbuchstaben unberücksichtigt. exact = inside -> Der Begriff wird innerhalb eines Wortes gesucht. Auch wenn es für die Benutzer schwieriger ist, werden die Parameter nur auf englisch akzeptiert, damit die Programmierarbeit nicht unermesslich wird. Man sieht das Chaos bei Microsoft VBA.

Dieser Abschnitt stand schon in myheaven. Hier natürlich muss er auf die Software zugeschnitten werden. Evtl. nur als Option auf der erweiterten Suchseite anwählbar.
Nun habe ich alles aus dem früheren Projekt übernommen, das mir relevant genug erschien. Die to do-Liste könnte man natürlich auch integrieren, doch für den Moment reicht der Blog.
People übernommen, überarbeitet und mit Impressum verwoben, so dass alles am richtigen Ort stehen sollte.

18. Mai 2010

Allgemeines

Erstellen des Dokumentes. Lese gerade meine Notizen vom Vorgängerprojekt, welches ich jetzt einmal beiseite lasse. Evtl. geht es ja später einmal wieder weiter. Wer nachschauen will:http://dict.ch
Das jetzige Projekt ist ja nicht weniger tollkühn, doch egal. Die Vorbereitungen sind abgeschlossen und die Entwicklung geht voran. Unterdessen sind auch die SIcherheitsvorkehrungen im Projekt verbessert worden und die Variablen sollten abgesichert sein ;-)
Wie im letzten Projekt geht es hier um den freien Ansatz wie bei der Wikipedia. Mal schauen, wie es laufen wird und ob das Projekt auch in eine selbstlaufende Phase übergeht. Wenn nicht, habe ich auf jeden Fall wieder viel gelernt ;-)

Unklarheiten / Ideen

Das DB-Design steht in den Grundzügen fest und ist auch dokumentiert. Auch hier stellt sich die Frage nach Sprachunterstützung. Auf der Webseite ist es klar, da gibt es Ausgabedateien für jede Sprache. Für die Beschreibungen der Software werde ich wohl auch den zweistelligen Ländercode verwenden. Hoffe, der genügt.

Änderungen / Fertiggestelltes

Die Geschichte begann schon im April. Daher sind viele Aufgaben schon erledigt worden in den letzten Tagen wie die Hauptnavigation, das Einloggen und Registrieren und sogar eine rudimentäre Suchfunktion sind implementiert.
Auch die Fehlerausgabeseiten sind schon vorhanden, ein kleines Impressum und auch eine kleine Suchhilfe. Das wären die Vorarbeiten. Der Rest sollte dann näher erläutert werden. Im Dokumentation.txt steht in kurzer Zusammenfassung alles Notwendige drin.

Spezielles

Hier in etwa der Dateiaufbau. Sprachen steht für die jeweiligen Sprachen und ist als Abkürzungen für alle Sprachverzeichnisse gedacht. Angaben ohne Dateiendung bedeutet Verzeichnis. Das ... bedeutet, dass noch weitere Dateien vorhanden sind, die aber für das Verständnis nicht notwendig sind.
Die Inhalte der Unterverzeichnisse sind von extern nicht aufrufbar.

Main: .htaccess, error404.php, index.php, robots.txt

pictures -> alle Bilder und Icons, welche das Projekt verwendet.

save -> Sessions bei denen kein Cookie erlaubt ist?

uploads -> Zwischenverzeichnis fürs Hochladen der Software.

code -> footer.php, header.php, index.php, navigation.php, style.css

software -> Softwarename -> Dateien der Software und Screenshots

admin -> error.php, func.log.php, ..., help.php, ..., standard.php, story.php

lang -> Sprachen -> erroroutput.php, footeroutput.php, ...

Files:
array ( )
Get:
array ( 'link' => 'story', 'dir' => 'admin', )
Post:
array ( )
Session:
array ( 'extended' => false, 'link' => 'admin/story.php', 'languageBrowser' => 'de', )