Datum in DB schreiben ( update )

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

  • #16
    Bin ich blöde - Danke !

    Gespeicher wird es nun so in der DB : 20031204

    Was soweit stimmt, nur ausgelesen wird es als : 20.08.1970

    Gruss und Danke Alf

    Comment


    • #17
      Hab jetzt nicht alles gelesen, sorry.

      Gespeicher wird es nun so in der DB : 20031204
      speichert man ein datum nicht als DATE, bzw. DATETIME, dann kannst du es auch ordentlich formatieren. ansonsten musst du die formatierung in HTML vornehmen, was natürlich schwachsinn ist.

      Comment


      • #18
        O.K. nun speichere ich es wie folgt ab ( Zelle ist auf DATE eingestellt ):
        PHP Code:
        $lizenz_end explode(".",$N_lizenz_end);
        $day     $lizenz_end[0]; 
        $month   $lizenz_end[1]; 
        $year   $lizenz_end[2];
        $lizenz_end "$year$month$day";
            
        $sql "UPDATE ".PPHL_TBL_USERS." SET lizenz_end = '".$lizenz_end."',  "
                 
        "WHERE id = ".$id;
        $res mysql_query($sql); 
        Es wird folgendermassen in der DB gespeichert : 2003-12-04

        Und so möchte ich es abfragen :
        PHP Code:
        $lizenz_end=DATE_FORMAT($row['lizenz_end','%d.%m.%Y']); 
        Aber irgendwie kommt DATE nicht mit '$row' zurecht,
        oder habe ich bei der Abfrage was falsch gemacht.

        Danke und Gruss Alf

        Comment


        • #19
          DATE_FORMAT benutzt du in der query:
          Code:
           SELECT bla, DATE_FORMAT('%d.%m.%Y',datum)  datneu ...
          in $row['datneu'] steht dann der wert
          Kissolino.com

          Comment


          • #20
            auf was für ideen mansche leute kommen

            Comment


            • #21
              hehe. du hast auch mal klein angefangen.
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Comment


              • #22
                Original geschrieben von TobiaZ
                auf was für ideen mansche leute kommen
                OffTopic:
                man kanns ja mal versuchen, "experimentelle programmiertechnik" nennt man das wohl
                Kissolino.com

                Comment


                • #23
                  Sonst funzt das **grins**

                  PHP Code:
                  $sql_base "SELECT id,DATE_FORMAT('lizenz_end','%d.%m.%Y') FROM ".PPHL_TBL_USERS." "
                  und

                  PHP Code:
                  $datum=$row['lizenz_end'); 
                  Bekomme ich eine Fehlermeldung :
                  Parse error: parse error, unexpected ')', expecting ']' in /admin2.php on line 101

                  Gruss und Danke Alf

                  Comment


                  • #24
                    uiuiui!

                    Also guck dir den Code doch bitte vorher nochmal an, bevor du hier postest

                    PHP Code:
                    $datum=$row['lizenz_end'); 
                    wenn du hier nicht auf anhieb siehst, was du verpeilt hast. noch dazu bei der fehlermeldung, die ganau das besagt!

                    Comment


                    • #25
                      achso, wenn du das feld mit $row['lizenz_end'] ausließt, was macht dich glauben, dass du dann das formatierte datum erhälts? das ist doch nicht mehr, als das feld was in der DB steht.

                      du musst

                      SELECT DATE_FORMAT(lizenz_end,"FORMAT") new_lizenz_end, * FROM tab

                      benutzen, und dann mit new_lizenz_end abfragen.

                      Comment


                      • #26
                        Tschuldigung, aber ich habe es doch mit
                        PHP Code:
                        $sql_base "SELECT id,conf,username,hits,admin,demo,email,visible,"
                        "date_start,DATE_FORMAT('lizenz_end','%d.%m.%Y') new_lizenz_end,access_diff,del_usr,gmt,hit_mail,loglim,your_url,pw,tblsize FROM ".PPHL_TBL_USERS." "
                        formatiert oder ?

                        Und nun wollte ich es mit
                        PHP Code:
                        $lizenz_end=$row['new_lizenz_end'); 
                        ausgeben.

                        Aber ohne Erfolg.
                        Code:
                        Parse error: parse error, unexpected ')', expecting ']' in /home/www/web18/html/counter/admin/admin2.php on line 101
                        Danke Alf

                        Comment


                        • #27
                          Jetzt nochmal gaaaanz langsam zum mitschreiben:
                          PHP Code:
                          1. $lizenz_end=$row['new_lizenz_end');

                          2. $lizenz_end=$row['new_lizenz_end']; 
                          Wo liegt zwischen 1. und 2. wohl der Unterschied?
                          Das ist nicht mal ne 50€-Frage.

                          Wo die Antwort ja schon in der Fehlermeldung steht.
                          Und nicht nur das, was falsch ist, sondern auch noch das, was da korrekterweise hingehört.

                          Augen auf und lesen!!!
                          Last edited by mrwhorf; 04-12-2003, 19:02.
                          if ($getraenk=="kein kaffee mehr da" && $verlangen=="gross") { $arbeitsmoral="im keller"; }

                          Comment


                          • #28
                            HA - HA - HA - GANZ SO BLÖD BIN ICH JA AUCH NICHT

                            den Fehler hatte ich dann selber bemerkt **grins**
                            aber es wird nichts ausgegeben ich habe es jetzt auch
                            schon in die Ausgabezeile integriert um es übersichtlicher
                            zu machen :
                            PHP Code:
                            function userListRow($row) {
                                global 
                            $strDate,$is_a_user,$rowcnt;
                                
                                if (
                            $rowcnt%2$bgcolor "ref";
                                else 
                            $bgcolor "color2";
                            $html .= "<td align=\"right\">&nbsp;".$row['new_lizenz_end']."&nbsp;</td>";
                            return 
                            $html;
                            }
                            $sql_base "SELECT id,conf,username,hits,admin,demo,email,visible,"
                                      
                            "date_start,DATE_FORMAT('lizenz_end','%d.%m.%Y') new_lizenz_end,access_diff,del_usr,gmt,hit_mail,loglim,your_url,pw,tblsize FROM ".PPHL_TBL_USERS." "
                            und unten wird dann die Funktion ausgegeben.

                            Danke Alf

                            Comment


                            • #29
                              Original geschrieben von webmasteralf
                              HA - HA - HA - GANZ SO BLÖD BIN ICH JA AUCH NICHT

                              den Fehler hatte ich dann selber bemerkt **grins**
                              Und warum postest du es dann wieder falsch?

                              Ausserdem versuchst du in deinem SELECT immer noch, eine Unix-Zeit als mysql-zeit zu formatieren.
                              Ich dachte, du hast da einen Unix-Timestamp drin stehen.
                              if ($getraenk=="kein kaffee mehr da" && $verlangen=="gross") { $arbeitsmoral="im keller"; }

                              Comment


                              • #30
                                @mrwholf: Das feld wurde zwischenzeitlich in DATE umgewandelt, weil das bei weitem besser ist.

                                @Alf: Du hast zweimal den gleichen Fehler hier gepostet und das obwohl es klipp und klar in der ErrorMessage steht. Da sollte man seine Doofheit () schon eingestehen können

                                außerdem solltest du dir überlegen, ob du den String(!) "lizenz_end" formatieren willst, oder doch lieber das datenbank-feld. Du tust nämlich ersteres.

                                Comment

                                Working...
                                X