Avatar billede dp2001 Juniormester
01. februar 2005 - 20:11 Der er 10 kommentarer og
1 løsning

Formattering af dato bliver til dags dato

I nedenstående bliver datoen konsekvent vist som dags dato, i stedet for formatet DD.MM.YYYY som jeg ellers ønsker.

Er fejlen i koden eller i DB'en og hvad skal jeg i givet fald rette?

==============================================================

<?php

function short_date( $dt )
    {
        $dt = date("d.m.y");
        return $dt;
    }

$sql1 = mysql_query("select * from odds_posteringer order by dato_insert asc");

$i = 0;

while ($a_row = mysql_fetch_object($sql1))
{
    $i++;
   
    if ($i == 1)
    {
        ?>
        <h4>Posteringer, <?php print $y ?></h4>
        <table width='600px'>
        <tr>
            <th align='left'width='15%'>Dato</th>
        </tr>
        <?php       
    }

    $dato_insert = $a_row->dato_insert;
    ?>
    <tr>
        <td align='left'><?php print short_date($dato_insert) ?></td>
    </tr>
<?php
}

if ($i > 0)
{
    print "</table>";
}
?>
Avatar billede danino Nybegynder
01. februar 2005 - 20:57 #1
Prøv dette:
<?php

function short_date( $dt )
    {
        $dato = date("d.m.y", $dt);
        return $dt;
    }

$sql1 = mysql_query("select * from odds_posteringer order by dato_insert asc");

$i = 0;

while ($a_row = mysql_fetch_object($sql1))
{
    $i++;
 
    if ($i == 1)
    {
        ?>
        <h4>Posteringer, <?php print $y ?></h4>
        <table width='600px'>
        <tr>
            <th align='left'width='15%'>Dato</th>
        </tr>
        <?php     
    }

    $dato_insert = $a_row->dato_insert;
    ?>
    <tr>
        <td align='left'><?php print short_date($dato_insert) ?></td>
    </tr>
<?php
}

if ($i > 0)
{
    print "</table>";
}
?>
Avatar billede dp2001 Juniormester
01. februar 2005 - 21:13 #2
Well, fremskridt i den forstand, at den rigtige dato udskrives, men den formatteres som YYYY-MM-DD HH:MI:SS, hvor jeg forventede DD.MM.YYYY.

Mystisk.
Avatar billede danino Nybegynder
01. februar 2005 - 21:42 #3
<?php

function short_date( $dt )
    {
        $dato = date("d.m.y", $dt);
        return $dato;
    }

$sql1 = mysql_query("select * from odds_posteringer order by dato_insert asc");

$i = 0;

while ($a_row = mysql_fetch_object($sql1))
{
    $i++;

    if ($i == 1)
    {
        ?>
        <h4>Posteringer, <?php print $y ?></h4>
        <table width='600px'>
        <tr>
            <th align='left'width='15%'>Dato</th>
        </tr>
        <?php   
    }

    $dato_insert = $a_row->dato_insert;
    ?>
    <tr>
        <td align='left'><?php print short_date($dato_insert) ?></td>
    </tr>
<?php
}

if ($i > 0)
{
    print "</table>";
}
?>
Avatar billede danino Nybegynder
01. februar 2005 - 21:43 #4
Havde lige lavet en trykfejl før...
Avatar billede dp2001 Juniormester
01. februar 2005 - 23:44 #5
nu returnerer den 01.01.1970 for alle rækker
Avatar billede sajbar Nybegynder
02. februar 2005 - 13:30 #6
select ALLE_DE_ANDRE_ATTRIBUTTER_DU_SKAL_BRUGE, DATE_FORMAT(DIT_DATO_FELT, '%d-%m-%Y') as dato from DIN_TABEL
Avatar billede dp2001 Juniormester
02. februar 2005 - 20:49 #7
det virker til gengæld! men jeg efterlyste nu mere en funktion, der kunne formattere datoer til formatet DD.MM.YYYY i stedet for at jeg skal lave ovenstående workaround i hver eneste sql statement.
Avatar billede sajbar Nybegynder
02. februar 2005 - 22:56 #8
det er faktisk ikke et work-around, det er faktisk den rigtige måde at gøre det på ;)

men hvad er det præcist du ønsker at gøre ?

den dato du ønsker at lave om til dansk format, hvordan ligger den gemt i databasen?
Avatar billede dp2001 Juniormester
02. februar 2005 - 22:59 #9
som date.....man må da kunne skrive en funktion, der formatterer det - det andet her virker da lidt omstændigt.
Avatar billede dp2001 Juniormester
08. maj 2005 - 20:22 #10
point til sajbar, hvis han lige svarer.
Avatar billede sajbar Nybegynder
08. maj 2005 - 21:36 #11
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester