tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
10
ZUGRIFFE
441
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    RTS RTS ist offline Mitglied Bronze
    Registriert seit
    Nov 2008
    Beiträge
    25
    Hallo,
    ich habe das Problem das bei meiner PHP-Seite das Datum in der internationalen Formatierung ausgegeben wird, was ja bei MySQL auch ganz normal ist, nur das umwandeln bekomm ich irgendwie nicht hin.

    Hier meine Seite:
    PHP-Code:
    <?php
    $seite 
    $_GET["seite"];
    if(!isset(
    $seite))
       {
       
    $seite 1;
       }
    $link mysql_connect("localhost","web306","cdtsmmf") or die ("Keine Verbindung moeglich");
    mysql_select_db("homepage") or die ("Die Datenbank existiert nicht");
    $eintraege_pro_seite 10;
    $start $seite $eintraege_pro_seite $eintraege_pro_seite;
    $abfrage "SELECT * FROM news LIMIT $start$eintraege_pro_seite";
    $ergebnis mysql_query($abfrage);
    while(
    $row mysql_fetch_object($ergebnis))
        {
       echo 
    "<div class=\"content_head\">".$row->newstitel."</div><div class=\"content_body\"><div style=\"text-align:right;float:right;font-size:12px\">".$row->newsrelease."</div>".$row->newstext."</div>";
       }
    $result mysql_query("SELECT newsid FROM news");
    $menge mysql_num_rows($result);
    $wieviel_seiten $menge $eintraege_pro_seite;
    echo 
    "<div align=\"center\">";
    echo 
    "<b>Seite:</b> ";
    for(
    $a=0$a $wieviel_seiten$a++)
       {
       
    $b $a 1;
       if(
    $seite == $b)
          {
          echo 
    "  <b>$b</b> ";
          }
        else
          {
          echo 
    "  <a href=\"?seite=$b\">$b</a> ";
          }
       }
    echo 
    "</div>";
    ?>
    Und wenn ich schon dabei bin ... noch nen kleines Problem, bei der Ausgabe der News werden mir ä,ö,ü und ß als Raute mit Fragezeichen dargestellt, wie löse ich dieses Textformatierungsproblem?

    MfG
    Thomas
     

  2. #2
    Avatar von saftmeister
    saftmeister saftmeister ist gerade online Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.521
    Ich sehe nirgends in deinem Code, das du ein Datum ausgibst. Oder soll das dieses $row->newsrelease sein?

    Zitat Zitat von RTS Beitrag anzeigen
    Und wenn ich schon dabei bin ... noch nen kleines Problem, bei der Ausgabe der News werden mir ä,ö,ü und ß als Raute mit Fragezeichen dargestellt, wie löse ich dieses Textformatierungsproblem?
    Du verwendest vermutlich eine UTF8-codierte Datenbank. Dann müsstest du deine Seite auch als UTF8 festlegen. Das macht man mit Hilfe eines Meta-Tags:

    HTML-Code:
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    Außerdem müsstest du auch noch den Client-Zugriff zur Datenbank mit UTF8 einstellen. Direkt nach dem Öffnen der Verbindung einfach einen Query senden:

    PHP-Code:
    mysql_query("SET NAMES utf8"); 
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  3. #3
    RTS RTS ist offline Mitglied Bronze
    Registriert seit
    Nov 2008
    Beiträge
    25
    Ja sry ... das Datum ist ( $row->newsrelease )
     

  4. #4
    emptynick emptynick ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    100
    Hallo,

    ist $row->newsrelease ein Timestamp?
    Wenn ja date(), wenn nein ganz schnell drauf umsteigen
    Dazu siehe mktime()

    Ich hoffe mal ich verstehe, was du meinst, wenn nein bitte um Erklärung :P
     

  5. #5
    RTS RTS ist offline Mitglied Bronze
    Registriert seit
    Nov 2008
    Beiträge
    25
    Sry bin nicht so erfahren mit PHP und MySQL ...
    Meine Idee: Der Eintrag "Newsrelease " soll ein Datum sein (tt.mm.jjjj) Ausgabe stimmt nur die Formatierung möchte ich anders haben so wie in den Klammern erwähnt ... also brauche ich "nur" das Datum umwandeln entweder per MySQL wenn möglich oder per PHP ...

    Wegen dem UTF8 ... wie meinst du das mit dem MySQL query könntest du mir zeigen an welcher position das hin muss?
    also der Text den es betrifft ist "$row->newstext"
    Geändert von RTS (26.10.09 um 08:24 Uhr)
     

  6. #6
    emptynick emptynick ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    100
    Hallo,
    dann guck dir wie gesagt mal mktime() und date() an.
    Wenn du jetzt Beispielsweise dein Datum von oben nimmst kannst du per mktime einen Timestamp erstellen und mit date() diesen formatieren, wie du lustig bist.
     

  7. #7
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Mit SQL lässt sich das Datum leichter formatieren. Du kannst also bereits im SQL das Datum als formatierter Text ausgeben.

    PHP-Code:
    SELECT *, DATE_FORMAT(newsrelease'%d.%m.%y') AS datestring  FROM news LIMIT $start$eintraege_pro_seite 
    Ab PHP 5 gehts auch einfach in PHP:
    PHP-Code:
    $datestring date_format($row->newsrelease'd.m.Y'); 
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  8. #8
    PreludeBA4 PreludeBA4 ist offline Mitglied Silber
    Registriert seit
    Dec 2004
    Ort
    Wiesbaden
    Beiträge
    55
    date()
    mktime()

    Da haste nen Link zu den beiden Befehlen
     

  9. #9
    RTS RTS ist offline Mitglied Bronze
    Registriert seit
    Nov 2008
    Beiträge
    25
    Danke Datum ist perfekt ... jetzt nur noch das Problem mit dem Zeichen ... nur mit dem ZHeichenproblem komm ich noch nicht auf nen grünen Nenner ... immer noch Karo mit Fragezeichen ...
    weis nicht genau wie ich das MySQL query einbinden soll ... bitte helfen
     

  10. #10
    Avatar von saftmeister
    saftmeister saftmeister ist gerade online Der Saft sei mit dir
    tutorials.de Premium-User
    Registriert seit
    May 2006
    Ort
    There is no place like 127.0.0.1
    Beiträge
    3.521
    Z.B. so:

    PHP-Code:
    $link mysql_connect("localhost","web306","cdtsmmf") or die ("Keine Verbindung moeglich");
    mysql_query("SET NAMES utf8");
    mysql_select_db("homepage") or die ("Die Datenbank existiert nicht"); 
    Da, wo in deinem Script der HTML-Head gesetzt wird, fügst du noch den og. Meta-Tag ein.
     
    Grüße
    --
    Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)

  11. #11
    RTS RTS ist offline Mitglied Bronze
    Registriert seit
    Nov 2008
    Beiträge
    25
    Besten Dank hat alles bestens funktioniert!

    MfG
    Thomas
     

Ähnliche Themen

  1. Datum formatieren
    Von Lautsprecher im Forum Java
    Antworten: 2
    Letzter Beitrag: 27.09.05, 13:23
  2. Datum formatieren?
    Von markberg im Forum PHP
    Antworten: 10
    Letzter Beitrag: 02.08.05, 14:15
  3. Datum formatieren
    Von son gohan im Forum PHP
    Antworten: 5
    Letzter Beitrag: 02.07.05, 02:10
  4. Datum formatieren!
    Von hAmSTeRDeLuXE im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 15.08.04, 23:38
  5. Datum formatieren
    Von thomson im Forum PHP
    Antworten: 10
    Letzter Beitrag: 15.06.04, 23:13