Tag/Monat/Jahr aus opt-Feldern nach SQL

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Tag/Monat/Jahr aus opt-Feldern nach SQL

    Hi,

    wie kann ich aus drei Optionsfeldern einen Eintrag in die DB
    vornehmen? Es soll möglich sein, die Tage(Anzahl) des gewählten Monats anzuzeigen.
    D.H.:

    PHP-Code:

    <SELECT NAME="jahr" onchange="window.location=('<? echo $PHP_SELF; ?>y='+this.options[this.selectedIndex].value)">
    <?
    $yearnow = date("Y");
    for ($y = $yearnow-3; $y <= $yearnow+3; $y++) { ?>
    <option value="<? echo "$y"; ?>"><? echo "$y"; ?></option>
    <? } ?>
    </select>

    <SELECT NAME="monat" onchange="window.location=('<? echo $PHP_SELF; ?>m='+this.options[this.selectedIndex].value)">
    <?
    for ($m = 1; $m <= 12; $m++) { ?>
    <option value="<? echo "$m"; ?>"><? echo "$m"; ?></option>
    <? } ?>
    </select>

    <select name="tag">
    <?
    $dmax = date('t');
    for ($d = 1; $d <= $dmax; $d++) { ?>
    <option value="<? echo "$d"; ?>"><? echo "$d"; ?></option>
    <? } ?>
    </select>
    Bei Auswahl von Februar soll im Dropdown "Tag" 28 (bzw.
    29) als Tage erscheinen. Folgende Reihenfolge wäre ( glaube ich)
    am besten:

    Jahr / Monat / Tag

    Damit erst das Jahr, dann der Monat gewählt wird und dann Tag aktualisiert wird um die richtige Anzahl Tage für den gewählten Monat im Angezeigten Jahr angezeigt wird.

    Hat da jemand einen Ansatz? Ich komme da nicht weiter.
    1402: Für einen Wimpernschlag der Zeit herrschte Gerechtigkeit auf Nord- und Ostsee...

  • #2
    wieso machst du es nicht nur über javascript ??

    gruss

    Kommentar


    • #3
      OK.
      Ich habe das mit Javyscript gemacht.
      Das letzte Problem ist:
      wie bekomme ich die richtige Anzahl Tage für folenden Ausdruck? :

      $anz_tage_in_monat=$funktiondieichsuche(y=$y,m=$m); // allg.

      oder

      $anz_tage_in_monat=$funktiondieichsuche(2003,2); // Feb,2003

      Es sollen immer die richtige Anzahl zurückkommen, egal ob
      Schaltjahr oder nicht.

      bzw. wie meinst du mit "NUR" mit JS?

      Habz! War in dem calendar script von hand schon drinnen....

      $dmax = date("t",mktime(0,0,0,$mon,$day,$jahr));

      Zuletzt geändert von bruno123; 18.09.2002, 18:47.
      1402: Für einen Wimpernschlag der Zeit herrschte Gerechtigkeit auf Nord- und Ostsee...

      Kommentar


      • #4
        jibt ne Funktion dafür:

        cal_days_in_month()

        taratus

        Kommentar


        • #5
          Ja ... aber nur wenn's installiert ist ... !

          PHP-Code:
          function daysinmonth($year$month) {
              static 
          $daysinmonth=array(1=>313=>314=>305=>316=>307=>318=>319=>3010=>3111=>3012=>31);
              if ( 
          $month==) {
                  if ( (
          $year%4==0) && ($year%100!=|| $year%400==0) ) return 29;
                  return 
          28;
              } else if ( 
          $month>=&& $month<=12 ) {
                  return 
          $daysinmonth[$month];
              } else return 
          0;

          könnte man verwenden ... aber getestet ist's nicht ... !

          Die Berechnung des Schaltjahres sollte aber passen ...
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            cal_days_in_month() ist eine Standard-Kalender-Funktion. (glaube ab 4.10)

            taratus

            Kommentar


            • #7
              Na dann les' mal die Doku:

              http://www.php.net/manual/en/ref.calendar.php
              carpe noctem

              [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
              [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

              Kommentar


              • #8
                @ goth

                Es ist ja nicht so, dass ich mich nicht auch mal irren könnte, aber was soll in der Doku zu lesen sein,
                was meiner Aussage entgegensteht ?!
                Ich habe da nichts entdecken können.

                Sicher muss calendar enable sein. Aber das gilt auch für andere Funktionen !

                So kann man

                mysql_query nur benutzen wenn MySQL Suport enabled ist

                session_start nur wenn Session Support enabled ist

                und und und ...

                Wird nun zu jedem Thema Deine Standard-Antwort sein:
                "Aber nur, wenn es installiert ist."

                In meiner gedownloadedten local-Version ist calandar enabled und
                bei den mir bekannten Providern ist calendar ebenfalls enabled !

                taratus

                Kommentar


                • #9
                  Nein ... es gibt Module die entweder per default aktiviert sind ... und welche die aufgrund des Webpaketes das man gebucht hat aktiviert sein müssen ... wenn ich ein Paket mit MySQL und PHP buche sollte klar sein, das das MySQL-Module installiert ist.

                  Für Sessions gilt (PHP Manual):
                  [color=blue]Session support is enabled in PHP by default.[/color] If you would not like to build your PHP with session support, you should specify the --disable-session option to configure.

                  Für Calendar gilt (PHP Manual):
                  To get these functions to work, you have to compile PHP with --enable-calendar.

                  Ergo ... es ist zwar möglich das Dein Provider 'Calendar' aktiviert hat ... aber es ist nicht Standard und ist daher mit Sicherheit nicht bei jedem Provider so ... und wenn nicht dann ist's Pustekuchen!

                  Mag sein das calendar mittlerweile in den Binaries enabled ist ... aber nicht jeder Provider verwendet die Binaries sondern baut sich aus den Sources 'ne eigenen Version (wir verwenden beispielsweise eine Version die für die GD-Lib JPG,PNG und GIF unterstützt).

                  Erst denken ... dann schreiben ... !
                  carpe noctem

                  [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                  [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                  Kommentar


                  • #10
                    Na toll wie sich das thread entwickelt hat. Vielleicht wäre es auch
                    ausreichend gewesen, lediglich seinen Standpunkt klarzumachen
                    oder seine Erfahrungswerte wiederzugeben !?

                    In jedem Fall war die böswillige Bemerkung "Erst denken ... dann schreiben ... !"
                    völlig überflüssig.
                    Inwieweit diese Formulierung bereits strafrechtlich relevant ist,
                    möchte ich hier (vorerst) nicht verfolgen.

                    taratus

                    Kommentar


                    • #11
                      Ihr seit echt zu hart....
                      1402: Für einen Wimpernschlag der Zeit herrschte Gerechtigkeit auf Nord- und Ostsee...

                      Kommentar


                      • #12
                        @taratus: Aufhör'n aufhör'n ... ich lach' mich noch tot ...
                        Leg' mich in Ketten ... !
                        Wie alt bist Du ... 10?? ... wenn die Bemerkung so überflüssig war ... warum tust Du's nicht??
                        carpe noctem

                        [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                        [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                        Kommentar

                        Lädt...
                        X