Auswertungstage festlegen

  • Guten Morgen Leute,

    kurz zu meinem Programm. Ich werte ein Schlüsselausgabe aus und erzeuge nach meiner Auswertung einige Diagramme daraus. Funktioniert auch alles soweit, jedoch nur für einen Tag. Ihr müsst euch vorstellen, dass die Schlüsselausgabe jeden Tag automatisch ein Logfile erstellt und genau hier fängt mein Problem an.
    Ich habe einen Kalender (komplett in JavaScript, welchen ich übrigens nicht selbst erstellt habe). Jetzt soll der Benutzer durch Klick auf den Kalender, das gewünschte "Start"-Datum und nach einem zweiten Klick das gewünschte "End"-Datum festlegen können.
    Mein Programm wird dann diese zwei Tage auswerten + diejenigen, die dazwischen liegen.
    Wie bekomme ich es hin, dass zuerst das Start und Enddatum gewählt werden muss und erst dann mein eigentliches Programm durchrasselt? Und vor allem wie komme ich an das Datum und wie übertrage ich es bspw. in ein Textfeld, damit ich es beim Klick auf den Submit-Button überprüfen kann?

    Ich hoffe ihr könnt mir weiterhelfen!

    Gruß CroweHammer

  • Zitat

    Wie bekomme ich es hin, dass zuerst das Start und Enddatum gewählt werden muss und erst dann mein eigentliches Programm durchrasselt?

    Ähm, Bedingungen einbauen (if) ? Genaue Schreibweise hängt jetzt davon ab mit was du es überprüfst... Wenn dein Script die Auswertung per PHP macht, bringt dir JS ja nicht viel. Wenn dein Script auch mit JS arbeitet, bringt dir PHP leider gar nichts...

    Ich nehm einfach mal an du hast den JS Kalender und alles andere wird dann per PHP erledigt.

    Nun, wie du die Userwahl da rausfischst hängt davon ab wie der Kalender aufgebaut ist...

    Kannst dir z.B. 2 inputfelder machen, sichtbar wäre ein wenig mehr arbeit, da du ja dann rausfinden musst welches Datum nun Start und welches Ende ist.

    Unsichtbar: welcher Wert wo ist, ist dann egal, kannst es per PHP auswerten sobald der Submit durch ist.

    Zur eintragung in die Fenster nimmt man document.write()
    http://de.selfhtml.org/javascript/objekte/document.htm#write


    Das wärs eigtl.

    ahja...
    Zu der Überprüfung noma:
    Soweit ich das verstanden habe, muss erst submited werden bevor dein script überhaupt was tut - gut. Danach überprüfst du eben ob alle daten übergeben wurden - wenn ja kannst es dann durchrasseln lassen, ansonsten zurück zum alten.

    Einmal editiert, zuletzt von Grevas (19. August 2009 um 09:20)

  • Mein eigentliches Script ist natürlich PHP und der Kalender rein JS, dass ist korrekt.

    Screenshot:
    http://www.bilder-hochladen.net/files/3j6r-3-jpg.html
    Bei dem gewünschten Auswertungszeitraum soll eben erst durch Klick auf den Kalender, das gewünschte Startdatum bei vom: eingetragen werden und nach einem zweiten Klick das gewünschte Enddatum bei bis zum:.
    Erst wenn diese beiden Felder mit einem Datum gefüllt sind, soll der Rest des Formulars ausgefüllt und schließlich abgeschickt werden.
    Durch ein Klick auf Auswertung wird dann eben mein ganzes Programm durchlaufen und die Diagramme gezeichnet.

  • Und wo ist jetzt dein Problem? Du könntest mit JavaScript die erste Überprüfung machen, ob alle Felder ausgefüllt sind. Im PHP-Script überprüfst du das nochmals und überprüfst dann auf die Gültigkeit der Daten. Ist alles ok, rennt der Rest deines PHP-Scriptes, wenn nicht, das Formular wieder anzeigen. Stichwort: Affenformular

  • Naja, dann wirst du leider viel mit JS frimmeln müssen :D

    Musst ja auch noch überprüfen ob die auswahl richtig ist. Man will ja nicht als Start 19.xx haben und als ende 16.xx, das muss dein script dann ja auch noch richtig stellen. Kannst es natürlich auch resetten lassen wenn der Fall vorkommen sollte... Ich denke es wäre ein wenig unpraktisch vorzusetzen welche Angabe zuerst gemacht werden soll.

    Ich muss leider gestehen das ich von JS praktisch keine Ahnung hab (bääh). Wüsste jetzt nicht mal wie man globale Variablen macht x)

    Aber das Prinzip:

    - auswahl 1
    - auswahl 2

    1. Auswertung der Auswahl
    2. document.write() (in die inputs vom: ; bis zum: estlicher kram den du sonst noch schreiben willst )
    3. submit button anzeigen lassen, vorher würd ich den als Hidden einstellen, da ohne Eingaben es eh nichts bringt ^^