Datumsformat

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Datumsformat

    Hallo, in welchem Formata speichert MysQL das Datum bei einem Feld Typ Date ab?

    Ich habe folgenden Code und möcht alle Termine in der Zukunft anzeigen. KLappt auch leider werden aber keine Daten ausgegeben, ich denke dass es an dem Datumsformat liegt.
    PHP Code:
    <?
    mysql_connect("localhost","","");
    mysql_select_db("rsc");
    $today=date('y-m-d');
    $abfrage ="SELECT text, Datum FROM termine where Datum >'$today'";
    $ergebnis = mysql_query($abfrage);
    while($row=mysql_fetch_array($ergebnis))
    {
    echo "$row->text<br>";
    }
    ?>

  • #2
    das sql-konstrukt NOW() liefert dir je nach kontext immer das jetzige datum im richtigen format, du brauchst kein php-gewurschtel verwenden.
    Die Zeit hat ihre Kinder längst gefressen

    Comment


    • #3
      Danke für den Tipp. Habe es auch mit obigen hinbekommen, allerdings würde mit jeder PHP Profi für diese Ausgabe lunchen

      PHP Code:
      {
      echo 
      "$row->text<br>";

      muss nämlich so heißen wie ich gemerkt habe

      PHP Code:
      {
      echo 
      "$row[text]<br>";

      Nur aus Fehlern wird mal schlau. Gibts hierfür nen Merksatz um nicht nochmal den Fehler zu machen?`

      Danke

      Comment


      • #4
        mysql_fetch_array

        was brauchst du denn noch ?

        ausserdem muss es so heissen:
        PHP Code:
        echo "$row['text']<br>"
        den unterschied erklärt dir das manual
        mfg,
        [color=#0080c0]Coragon[/color]

        Comment


        • #5
          PHP Code:
          echo $row['text'].'<br />'
          Die Zeit hat ihre Kinder längst gefressen

          Comment


          • #6
            o.k habe verstanden.

            Allerdings habe ich kleine Problem bei der Datumsformatierung:

            Dass müsste doch eigentlich mit folgendem Befehl gehen

            PHP Code:
            $abfrage="SELECT *, DATE_FORMAT(datum,'%d.%m.%y') FROM termine where Datum >='$today' order by Datum Limit 1"
            gehen, dass Format ändert sich aber nicht von 2005-05-21 auf 21-05-2005

            Was habe ich falsch gemacht, sorry ich weiß da gibt es zich tausende Threads zu.

            Comment


            • #7
              wetten es geht ?

              wie sieht deine ausgabe/weiterverwendung aus ?

              bzw:
              PHP Code:
              echo $row["DATE_FORMAT(datum,'%d.%m.%y')"].'<br />'
              besser du verwendest nen alias 'as'
              Last edited by Coragon Rivito; 21-05-2005, 19:05.
              mfg,
              [color=#0080c0]Coragon[/color]

              Comment


              • #8
                Jup jetzt gehts, da muss ich also das ganze unten nochmal wiederholen, ? Oder wie kann ich mir das erklären.?

                Gruß & Danke für die Hilfe

                Comment


                • #9
                  naja, woher soll mysql denn wissen welche spaltenbezeichnung jetzt verwendet werden soll ? könntest ja auch das selbe datum 10 mal anders formatiert abfragen wollen ..

                  du kannst allerdings deinen gewünschten spaltennamen kundtun:
                  select ... date_format( .. ) as datum ..

                  DANN hast du dein datum
                  mfg,
                  [color=#0080c0]Coragon[/color]

                  Comment


                  • #10
                    alles klar danke

                    Comment


                    • #11
                      Original geschrieben von Coragon Rivito
                      mysql_fetch_array

                      was brauchst du denn noch ?

                      ausserdem muss es so heissen:
                      PHP Code:
                      echo "$row['text']<br>"
                      den unterschied erklärt dir das manual
                      Haarspalt_mode=on

                      PHP Code:
                      echo "{$row['text']}<br>"
                      Haarspalt_mode=off

                      Comment


                      • #12
                        wenn wir schon bei Haarspaltere sind noch zwei Fragen:

                        1. Wie muss ich es richtig formatieren um vor

                        PHP Code:
                        echo $row["DATE_FORMAT(datum,'%W, %d.%m.%y')"].'<br /></font></b>'
                        noch folgenden HTML Code zu stellen

                        [color=blue]
                        "<font color='#CC0000'><b>
                        [/color]

                        einfach davor setzen ist nicht

                        2 Frage

                        mit
                        PHP Code:
                        %
                        Kann ich den Wochentag anzeigen lassen, wie muss ich es anstellen um in Deutsch zu formatieren nicht Wednesday sondern Mittwoch?

                        Comment


                        • #13
                          für das zweite Problem habe ich ne Lösung gefunden

                          PHP Code:
                          $wochentage = array("montag","dienstag"...);
                          $query "SELECT WEEKDAY(namederdatumsspalte) as wochentag FROM tabellenname";
                          $ergebnis mysql_fetch_array(mysql_query($query,verbindungsressource));
                          echo 
                          $wochentage[$ergebnis['wochentag']]; 
                          Bin allerdings nicht in der Lage das in den bestehenden Code einzufügen.

                          Da ich das ganze sowie aus einer csv Datei importiere könnte ich den Wochentag auch in Deutsch gleich mit importieren, aber die Lösung würde mich trotzdem interessieren.

                          Bei Punkt 1 bin ich aber noch nicht weiter

                          Comment

                          Working...
                          X