problem bei auswertung der formulardaten

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

  • #31
    das verwende ich in dem code schon - leider funzt das nicht wie gewünscht, wie ja in dem dropdownfeld immer ein wert drin steht

    Kommentar


    • #32
      dann nimmt die Zeile 42 raus.

      Kommentar


      • #33
        ich habe es nun anders gemacht - vermutlich etwas zu kompliziert - aber anders kann ich es halt nicht

        im dropdownfeld habe ich als weiteren listenwert "alle" eingeführt

        ich frage nun folgendes ab

        PHP-Code:
        if ($_POST['selectm'] != "alle")
        {
        if (isset(
        $_POST['selectm']) AND ! empty($_POST['selectm'])) 
         
        $where[] = " MONTHNAME(contract_lfz) = " mysql_escape_string($_POST['selectm']) . ""

        Kommentar


        • #34
          vielen dank für eure hilfe

          Kommentar


          • #35
            Original geschrieben von jhaustein
            das verwende ich in dem code schon - leider funzt das nicht wie gewünscht, wie ja in dem dropdownfeld immer ein wert drin steht
            wenn du das manual gelesen hättest, hättest du gesehen, dass der wert 0 das ist, was du suchst, aber du willst ja nicht lesen...
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #36
              hallo gemeinschaft

              was ist an diesem ausdruck falsch?

              $where[] = " contract_lfz >= '" . mysql_escape_string($_POST
              ['selecty'].$_POST['selectq']). "' and contract_lfz <= 'DATE_ADD($_POST
              ['selecty'].$_POST['selectq'], Interval 3 month)'";

              das ist die fehlermeldung
              Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xxamp\xampp\htdocs\test\summe.php on line 71

              wenn ich anstelle
              'DATE_ADD($_POST['selecty'].$_POST['selectq'], Interval 3 month)'

              '2005-09-01' eintrage, dann klappt es

              aus selectq kommt -01-01
              aus selecty kommt 2004

              nun habe ich es mal den oberen term abgeändert in
              $sql .= " and contract_lfz <= DATE_ADD('". mysql_escape_string($_POST
              ['selecty'].$_POST['selectq'], Interval 3 month)."')";

              nun bekomme ich diese meldung
              Parse error: parse error, unexpected T_LNUMBER in
              C:\xxamp\xampp\htdocs\test\summe.php on line 82

              Zuletzt geändert von jhaustein; 14.12.2004, 09:52.

              Kommentar


              • #37
                Ist zwar sehr löblich, daß Du die Keynamen alle in Quotes einschliesst, aber wenn Du innerhalb von Quotes nochmal Quotes verwendest, dann wird der Interpreter auch nur bis zum ersten Auftreten der Quotes Dein Konstrukt interpretieren und Schwierigkeiten haben, das was danach folgt richtig einzuordenen.

                PHP-Code:
                'DATE_ADD($_POST['selecty'].$_POST['selectq'], Interval 3 month)' 
                sollte

                PHP-Code:
                'DATE_ADD(".$_POST['selecty'].$_POST['selectq'].", Interval 3 month)' 
                lauten.
                Happiness is an empty error log

                Kommentar


                • #38
                  hi

                  ich habe die abfrage mir nun anzeigen lassen
                  das steht nun da
                  SELECT MONTHNAME(contract_lfz) as month, left(contract_lfz, 4) as
                  year,SUM(contract_summe) as summe FROM contract WHERE left
                  (contract_lfz, 4) = 2005 AND contract_lfz >= '2005-10-01' and contract_lfz
                  <= 'DATE_ADD(2005-10-01, Interval 3 month)' group by contract_lfz

                  leider zeigt er kein ergebnis an, obwohl dort welche sind

                  Kommentar


                  • #39
                    Original geschrieben von jhaustein
                    contract_lfz
                    <= 'DATE_ADD(2005-10-01, Interval 3 month)'
                    Sicher dass du Datensätze hast, bei denen das Feld contract_lfz kleiner als der String DATE_ADD(2005-10-01, Interval 3 month) ist?
                    Du machst immer noch die gleichen sachen falsch...
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #40
                      okay selbst, wenn ich ' ' wegnehme, habe ich kein ergebnis - das meintest du doch mit string - oder?

                      Kommentar


                      • #41
                        Da war ja noch ein Fehler um den Fehler herum. Das ganze Konstrukt sollte so aussehen:

                        PHP-Code:
                         $where[] = " contract_lfz >= '" mysql_escape_string($_POST
                        ['selecty'].$_POST['selectq']). "' AND contract_lfz <= DATE_ADD(".$_POST
                        ['selecty'].$_POST['selectq'].", Interval 3 month)"
                        Das ist aber auch einmalig schön unübersichtlich....
                        Happiness is an empty error log

                        Kommentar


                        • #42
                          hi vielen dank für deine mühe - jetzt ist das die abfrage - aber leider kein ergebnis

                          SELECT MONTHNAME(contract_lfz) as month, left(contract_lfz, 4) as
                          year,SUM(contract_summe) as summe FROM contract WHERE left
                          (contract_lfz, 4) = 2005 AND contract_lfz >= '2005-10-01' AND contract_lfz <= DATE_ADD(2005-10-01, Interval 3 month) group by contract_lfz

                          Kommentar


                          • #43
                            Wird wohl mal Zeit, in die MySQL-Anleitung bezüglich Quotes zu schauen.


                            PHP-Code:
                            DATE_ADD(2005-10-01Interval 3 month
                            Ergibt NULL

                            PHP-Code:
                            DATE_ADD('2005-10-01'Interval 3 month
                            Ergibt 2006-01-01

                            Das Datum muß als String übergeben werden, aber das solltest Du nach dem 5-seitigen Grundkurs hier im Forum selbst hinbekommen.
                            Happiness is an empty error log

                            Kommentar


                            • #44
                              Original geschrieben von Cymon
                              das solltest Du nach dem 5-seitigen Grundkurs hier im Forum selbst hinbekommen
                              OffTopic:
                              wenn du wüsstest, wieviele 5- und mehrseitige Grundkurse es hier schon gibt...
                              Ich denke, also bin ich. - Einige sind trotzdem...

                              Kommentar


                              • #45
                                klasse daran lags - vielen dank

                                Kommentar

                                Lädt...
                                X