Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

ich bin gerade dabei eine Art Terminreservierung in PHP zu programmieren. Das ganze funktioniert auch schon wunderbar (Einträge werden nicht doppelt geschrieben usw.)

Das Ganze ist Folgendermaßen aufgebaut

Termin bei: ___________ Dropdown

Ihr Name: ____________ Textfeld

Uhrzeit: ___________ Dropdown

Nun hätte ich gerne, wenn man im Feld "Termin bei" einen Mitarbeiter auswählt, dass das Feld "Uhrzeit" nur noch die verfügbaren Uhrzeiten bei diesem Mitarbeiter auflistet. (Bisher hab ich erst beim absenden überprüft, ob die Uhrzeit frei ist oder nicht und die Freien Uhrzeiten dann danach aufgelistet) Welcher Termin Frei ist wird in der Datenbank ganz einfach durch eine extra Spalte geregelt mit 0 = Frei und 1= Belegt.

Pro Mitarbeiter gibt es eine Extra Tabelle in der Datenbank

(Name des Auftragstellers(Text) | Uhrzeit(Text) | Belegt(int))

Wäre für Hilfe sehr Dankbar, vllt ist es auch sinnvoll erst "Termin bei" anzugeben, dann auf weiter zu klicken und dann die Uhrzeit auszuwählen???

Wäre für Codeschnippsel auf jeden Fall auch sehr dankbar, da ich noch relativ neu auf diesem Gebiet bin.

Vielen Dank schonmal :)

Geschrieben

Nun hätte ich gerne, wenn man im Feld "Termin bei" einen Mitarbeiter auswählt, dass das Feld "Uhrzeit" nur noch die verfügbaren Uhrzeiten bei diesem Mitarbeiter auflistet.

Stichwort: Ajax

Welcher Termin Frei ist wird in der Datenbank ganz einfach durch eine extra Spalte geregelt mit 0 = Frei und 1= Belegt.

Warum das?

warum nicht einfach nur die in die datenbank schreiben die belegt sind? der rest sollte sich ja automatisch ergeben.

außerdem klingt das jetzt so als wären nur starre zeitangaben (9-10, 10-11 usw) möglich. was wenn der kunde einen termin 9:45 will?

und das ganze scheint auch nur für den (aktuellen?) tag gedacht zu sein, also einen termin in 2 wochen kann ich da nicht anlegen?

Pro Mitarbeiter gibt es eine Extra Tabelle in der Datenbank

(Name des Auftragstellers(Text) | Uhrzeit(Text) | Belegt(int))

schlecht, warum steht der mitarbeiter nicht einfach als feld mit in der tabelle?

pro mitarbeiter ne tabelle zu bauen führt spätestens dann zu frust wenn 4 kündigen und 20 eingestellt werden. außerdem speichert man informationen in der tabelle und nicht im tabellen namen.

Wäre für Hilfe sehr Dankbar, vllt ist es auch sinnvoll erst "Termin bei" anzugeben, dann auf weiter zu klicken und dann die Uhrzeit auszuwählen???

sinvoll für wen? für dich, ja weil weniger arbeit. für den kunden, nein.

Geschrieben

Das ganze ist für ein Elternsprechtag an ner Schule, deswegen Ja es sind feste Zeitangaben und die Mitarbeiterkündigung ist bis zum Elternabend auch sehr unwahrscheinlich ^^

Geschrieben

Wenn du so an die Sache herangehst.. dann leg lieber nen Zettel hin... - wo sich die Eltern selbst eintagen können.

1. Mal unter Normalisierung nachlesen.

2. Muss es nicht immer AJAX sein. Du kannst auch bei jedem umändern des Drop-Down.. das Formular absenden :D.

Zugegeben - schön ist das nicht. Aber wenn ich deine Kenntnisse so einschätze, wäre AJAX dann noch eine weitere Herausforderung - die du meistern musst. (Ob es durch ein AJAX-FramWork besser wird ?)

3. Dann nimm lieber was *FERTIGES*. Stichwort "Groupware"!

Da gibt es viele - die *ALLES* leisten (und viel, viel mehr), was du willst.

lG

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...