Mit datetime schreiben, aber mit date suchen

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

  • Mit datetime schreiben, aber mit date suchen

    Hallo zusammen,

    ich habe mal wieder ein kleines Problem mit einem query.
    Die Spalte hat das Format dateime und wird mit
    PHP-Code:
    date(Y-m-d H:i:s
    reingeschrieben. Funktioniert einwandfrei soweit alles klar.
    Nun versuche ich alle Datensätze die zu einem bestimmten Datum in die Relation geschrieben wurden wieder auszulesen. Sprich auf die datetime-Spalte zuzugreifen, wobei aber der Zeitanteil ignoriert werden soll.
    Hier der query, der leider kein Ergebnis bringt. $_GET['datum'] hat das richtige Format.
    PHP-Code:
    $query "SELECT au_nr, projekt FROM laufzettel WHERE buchungsdatum = '".$_GET['datum']."' GROUP BY au_nr"
    Ich vermute mal, dass im WHERE nicht mit = gearbeitet werden kann. Nur was muss ich da nehmen ???


    Vielen Dank für eure Hilfe !
    Gruß

    Michael

  • #2
    Zitat von fritzje610 Beitrag anzeigen
    Ich vermute mal, dass im WHERE nicht mit = gearbeitet werden kann. Nur was muss ich da nehmen ???
    http://dev.mysql.com/doc/refman/5.1/...functions.html

    Kommentar


    • #3
      Du solltest deinen Code vor SQL-Injections schützen.

      PHP: SQL Injection - Manual

      Kommentar


      • #4
        Ich habe mir den Artikel von onemorenerd mal angesehen, komme aber nicht weiter. Ich komme nicht darauf, wie der WHERE-Teil aussehen muss.
        Habt ihr was konkreteres zur Hand ?


        Danke !
        Gruß

        Michael

        Kommentar


        • #5
          In diesem Thread ging es nebenbei auch um Datumsfunktionen.

          Davon abgesehen: Sind die Beispiele im MySQL-Handbuch nicht konkret genug? Dort werden diese Funktionen sogar ebenfalls in der Where-Klausel vorgeführt.

          Gruß,

          Amica
          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
          Super, danke!
          [/COLOR]

          Kommentar


          • #6
            Ich blicks echt nicht. Das Datum habe ich mit %Y %m %d versucht zu formatieren, aber das bringt keinen Erfolg. Wie muss dieser blöde query denn aussehen. So langsam verzweifle ich daran.
            Gruß

            Michael

            Kommentar


            • #7
              Dann nimm dir die Zeit und lies das Handbuch und die Beispiele.
              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
              Super, danke!
              [/COLOR]

              Kommentar


              • #8
                Das ist richtig, aber es fehlt mir momentan die Zeit, ich brauch ein Ergebnis.
                Mittlerweile bin ich hier angelangt
                PHP-Code:
                $query "SELECT au_nr, projekt DATE('".$_GET['datum']."')AS buchungsdatum FROM laufzettel GROUP BY au_nr"
                Allerdings gibts dann ne Syntax-Fehlermeldung.
                Kommt, lasst mich nicht hängen, wie muss dieser query lauten. Ich hab sonst echt ein großes Problem an der Hacke.

                Danke !
                Gruß

                Michael

                Kommentar


                • #9
                  Zitat von fritzje610 Beitrag anzeigen
                  Das ist richtig, aber es fehlt mir momentan die Zeit, ich brauch ein Ergebnis.
                  Das ist uns egal.

                  Allerdings gibts dann ne Syntax-Fehlermeldung.
                  Zu einer cleveren Fehlerbeschreibung gehört natürlich unbedingt, den genauen Wortlaut von Fehlermeldungen zu verschweigen.

                  Kommt, lasst mich nicht hängen, wie muss dieser query lauten. Ich hab sonst echt ein großes Problem an der Hacke.
                  Hör auf, rumzujammern.
                  Wenn du dich mit deinen Projekten übernimmst, ist das einzig und allein dein Problem.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    Ungültige Abfrage: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '('2010-04-12') AS buchungsdatum FROM laufzettel GROUP BY au_nr' at line 1
                    Gruß

                    Michael

                    Kommentar


                    • #11
                      Prüf alle geforderten Kommas! Davon abgesehen verstehe ich nicht, was es bringen soll, ein PHP-Datum als Spaltenreferenz in eine Abfrage einzubauen, um es dann mit PHP wieder abzurufen. Wolltest du nicht was mit einer Where-Klausel machen?
                      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                      Super, danke!
                      [/COLOR]

                      Kommentar


                      • #12
                        Ich möchte aus der Tabelle laufzettel alle Datensätze, gruppiert nach au_nr, finden, die am Datum, dies steht in $_GET['datum'], eingetragen wurden.
                        Dabei ist die Uhrzeit nicht relevant und die Spalte buchungsdatum (die die abgefragt werden soll) hat den Typ datetime.
                        Gruß

                        Michael

                        Kommentar


                        • #13
                          Also willst du nach etwas filtern. Wie filtert man? Richtig, mit WHERE. Was steht hinter dem WHERE? Ein Vergleich. Wie ist der aufgebaut? Etwas aus dem Datensatz links, etwas vorgegebenes rechts, dazwischen ein Vergleichsoperator, z. B. =. Deine Vorgabe ist das Datum aus PHP. Der Ausdruck links ist das Datum aus dem Datensatz. Wie bekommst du das? Indem du DATE auf die DATETIME-Spalte anwendest? War das schwer? Nein.

                          Bevor du Projekte annimmst, bei denen du Geld verdienen willst und/oder Termine einhalten musst, solltest du diese Grundlagen beherrschen. Das Forum ist keine Reparaturwerkstatt für Entwicklungshochstapler.
                          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                          Super, danke!
                          [/COLOR]

                          Kommentar


                          • #14
                            Wenn ich Geld damit verdienen würde, wäre es schön.

                            Mein Fehler war, dass ich den falschen Teil des Vergleichs anpassen wolte.
                            Es wäre doch einfacher gewesen zu sagen, guck mal in den WHERE-Teil und den Vergleich darin,
                            als mit irgendwelchen Links um sich zu werfen. Der letze Post war der, der mir geholfen hat.
                            Das hätte einfacher und schneller gehen können.

                            Den Entwicklungshochstapler will ich jetzt nicht weiter kommentieren.
                            Zuletzt geändert von fritzje610; 13.04.2010, 13:18.
                            Gruß

                            Michael

                            Kommentar

                            Lädt...
                            X