Auf Fehler und Probleme hinzuweisen finde ich durchaus konstruktiv.
Konstruktiv ist für mich, seiner Kritik auch Verbesserungsvorschläge folgen zu lassen ...
also ich mag php seeeehr ^^ weis garnich, wie man das nich leiden kann
Dem schließe ich mich mittlerweile an. Ist zwar immer noch mühevoll, aber es macht Spaß, sich da einzuarbeiten.
Du solltest dir jedenfalls erstmal ein halbwegs vernünftiges Datenbankschema überlegen.
In meinem Kopf habe ich schon eine ziemlich genaue Idee, was ich haben will. Ich weiß allerdings noch nicht, ob das in der Form realisierbar ist, oder ob ich wieder eine andere Lösung brauche.
Jedenfalls hätte ich mir gedacht, ich brauche erstmal mehrere "kleine" DBs.
- Eine heißt derzeit "homepage" (ja, nicht ganz aussagekräftig, der Name) und nimmt alle User, die sich, bevor sie sich einloggen können, registrieren müssen, auf. --> id, passwort, username
- Eine andere heißt "produkte" und enthält eben alle 20 Produkte. --> id, produktname
- Eine weitere heißt "taetigkeiten" und enthält die 11 Tätigkeiten. --> id, taetigkeit
Und am Ende sollen (so vermute ich) ALLE Daten in EINER DB landen, die dann in ein vernünftig strukturiertes Excel-Dokument exportiert werden kann.
- Deswegen vielleicht eine DB "projektzeiterfassung" anlegen?! --> ??? (Spalten)
^^ Im Grund stelle ich mir das ungefähr so vor, dass die "kleinen" DBs die jeweiligen Daten aus dem online-Formular aufnehmen. Und dann, sofern möglich, liefern die "kleinen" DBs diese an die eine große "Über-DB" weiter.
Oder, um uns vielleicht Arbeit zu ersparen, könnte man vielleicht auch einfach gleich nur die eine große DB, die bereits Spalten für Produkte, Tätigkeiten, Zeit, etc. enthält, erstellen und dann eben die Daten aus den einzelnen Formularfeldern (dropdowns, checkboxen, whatever, ...) immer nur an die jeweilige Spalte in der großen DB übertragen.
So eine "große DB" müsste es dann eben für jeden einzelnen User geben. Vielleicht sogar noch dynamisch erstellt, sobald sich dieser registriert.
K. A. was davon oder inwieweit sich das so umsetzen lässt, aber soweit jedenfalls meine Vorstellung von dem ganzen ...
Was die Umsetzung betrifft: Daten in php aus DBs holen, ist mir schon einigermaßen klar. Zuerst Verbindungsaufbau mit mysql_connect(), dann eben die Spalte ($row) auswählen, und mit der id auf die Daten zugreifen. Wie das jetzt umgekehrt geht, mit Daten an eine DB senden, weiß ich noch nicht so genau, aber vermutlich recht ähnlich. In meinem registrier-php-Script (heißt eigentlich eintragen.php) passiert ja schon genau das. Nur stammt der Code halt wieder aus dem Web und ich habe ihn nur entsprechend angepasst, damit er für das Projekt passt. Aber das finde ich da schon an, wie das zu machen ist.
--------------
Ich möchte zumindest die "Useroberfläche" jetzt erstmal nach der Idee gestalten:
wieso setzt du das ganze nicht vergleichbar der exel tabelle um?
ich stell es mir gerade so vor:
du baust die tabelle wie die exel dinges das vorgibt nach.
du hast einen statischen teil: den header. also die überschriften szs
du hast einen dynamischen teil: den inhalt schon gespeicherter datensätze
un du hast nochmal einen statischen teil: die eingabe maske für neue datensätze
naja und untendrunter noch die summen zusammenfassung
Wie das dann "im Hintergrund" ausschauen muss, da hätte ich bitte gerne ein paar Kommentare zu meiner Idee (siehe über Trennlinie in diesem Posting).
@ DarkMo
Hattest du beim dynamischen Teil gemeint, dass da html-dropdowns angelegt werden, die für ihre Auswahlmöglichkeiten auf die produkte- bzw. taetigkeiten-DB zurückgreifen (also deren Inhalt anzeigen)? Oder eben checkboxen, die in der Anzahl der Inhalte der jeweiligen DB dynamisch angelegt werden?
BTW: Läuft das nicht am Ende wieder auf Tessa's Idee raus, dass ich mehrere Seiten brauche? Ich lasse mir bspw. erstmal dynamisch die checkboxen für Tätigkeiten erstellen. Dann wählt der MA bspw. 3 aus, und jetzt brauche ich eine Möglichkeit, ihm die Produkt-Auswahlmöglichkeiten so anzuzeigen, dass er genau angeben kann, in welcher Tätigkeit er an welchem Produkt beschäftigt war. Ergo Seite 2? usw. ?