Avatar billede nestle-79 Nybegynder
07. februar 2002 - 09:39 Der er 42 kommentarer og
1 løsning

Time

Hvorfor vises tiden som:
1/1 - 70, Kl. 01:00 ??

Koden:
----

<?php
$topic_query = mysql_query("SELECT * FROM topics ORDER BY ID");
if (!isset($s)) {
}
    while ($topic = mysql_fetch_array($topic_query)) {
?>
                      <table class=text width="90%" border="0" cellspacing="0" cellpadding="0" align="center">
                        <tr>
                        <td width="75%">
<a href="view.php3?topicID=<?php echo $topic['ID'] ?>"><?php echo $topic['TopicName'] ?> </a>
</td>
<td width="25%">
<?php
$dato = time();
echo date("j/n - y", $data[dato]);
echo ", Kl. ";
echo date("H:i", $data[dato]);
?>

                          </td>
                        </tr>
                      </table>
<?php } ?>

------

Ville blive glad hvis en kunne hjælpe..
Avatar billede Slettet bruger
07. februar 2002 - 09:41 #1
hvad vil du gøre? Udskrive den tid der ligger i din tabel? Hvilket format er den i?
Avatar billede Slettet bruger
07. februar 2002 - 09:42 #2
<?php
echo date("j/n - y Kl. H:i", $topic[dato]);
?>
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 09:45 #3
Stadig 1/1 - 70, Kl. 01:00 :(
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 09:45 #4
Den skal skrive dato og tid for hvornår posten er oprettet!
Avatar billede htx98i17 Professor
07. februar 2002 - 09:57 #5
af hvilket format er $data[dato] ?
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 10:00 #6
$dato = time();
Avatar billede htx98i17 Professor
07. februar 2002 - 10:02 #7
altså du har indsat dato i db som time() ?
som det ser ud nu, erklærer du datoen (dog forkert) efter udtrækket, hvilket ikke vil give datoen for oprettelse...

Er det ikke et mysql timestamp som er i db ?
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 10:50 #8
Nu virker det godt nok, Viser det bare klokken en time for sent.

Hvordan ændre jeg det?

<?php
                echo date("j/n-y", $post[TimeStamp]);
                echo ", Kl. ";
                echo date("H:i:s", $post[TimeStamp]);
                ?>
Avatar billede htx98i17 Professor
07. februar 2002 - 11:04 #9
hvis det er et mysql timestamp, skal du konvertere det til et unix timestamp...
$topic_query = mysql_query("SELECT *,UNIX_TIMESTAMP(TimeStamp) AS tid FROM topics ORDER BY ID");

og så
<?php
                echo date("j/n-y", $post[tid]);
                echo ", Kl. ";
                echo date("H:i:s", $post[tid]);
                ?>
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 11:14 #10
Det virker ikke, jeg har sat den query streng ind og rettet [TimeStamp] til [tid]

Og så viser den bare 01.00.00 :|
Avatar billede htx98i17 Professor
07. februar 2002 - 11:16 #11
post lide din kode som den er nu...
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 11:18 #12
<?php
$post_query = mysql_query("SELECT *,UNIX_TIMESTAMP(TimeStamp) AS tid FROM posts WHERE (TopicID='$topicID') ORDER BY TimeStamp");
    while ($post = mysql_fetch_array($post_query)) {
?>
    <TR>
    <TD WIDTH=75% BGCOLOR="#FFFFFF" HEIGHT=28 VALIGN=TOP>
        <TABLE class=text BORDER=0 CELLSPACING=0 CELLPADDING=5 WIDTH=100%>
            <TR>
                <TD>
                <P><?php echo $post['Post'] ?>
                </TD>
            </TR>
        </TABLE>
    </TD>
    <TD WIDTH=25% BGCOLOR="#f5f5f5" VALIGN=TOP>
        <TABLE class=text BORDER=0 CELLSPACING=0 CELLPADDING=2 WIDTH=100% >
            <TR>
                <TD>
                <P ALIGN=center><b>Skrevet af:</b><br>
                <A HREF="mailto:<?php echo $post['Email'] ?>"><?php echo $post['Name'] ?></A>
                <BR><BR>
                <b>Skrevet den:</b><br>
                <?php
                echo date("j/n-y", $post[tid]);
                echo ", Kl. ";
                echo date("H:i:s", $post[tid]);
                ?>
                <br><br>
                <A HREF="edit-post.php3?postID=<?php echo $post['ID'] ?>">Ret dette indlæg
                <BR><BR>
                <A HREF="delete-post.php3?postID=<?php echo $post['ID'] ?>">Slet dette indlæg
                </TD>
            </TR>
        </TABLE>
    </TD>
</TR>
Avatar billede htx98i17 Professor
07. februar 2002 - 11:20 #13
hedder dit datofelt i db'en "TimeStamp" ?  før hed den jo "dato"
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 11:26 #14
Den hedder TimeStamp nu. Har rettet den i MySql.
Avatar billede htx98i17 Professor
07. februar 2002 - 11:28 #15
så gå lige ind i db'en og hent et eksempel på et TimeStamp, så vi kan se om det virkelig er et mysql timestamp :)
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 11:35 #16
Hvordan gør jeg det?

TimeStamp | VARCHAR(10) |  | Nej |

Er det hvad du ville se?
Avatar billede htx98i17 Professor
07. februar 2002 - 11:37 #17
jeg vil se et eksempel på en værdi i feltet TimeStamp
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 11:42 #18
10
Avatar billede htx98i17 Professor
07. februar 2002 - 11:43 #19
10 ? hehe
det er 12 tal for lidt...
lav felttypen om til det der hedder TIMESTAMP(14)
Avatar billede Slettet bruger
07. februar 2002 - 12:22 #20
Jeg har desværre ikke fået nogle mails fra eksperten længe (hvad kunne man forvente) men giver htx ret i at 10 er for få tegn *G*
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:29 #21
Jeg fatter det ikke..

Nogen der kunne give mig et fif om hvordan man skriver dato og (DK) tid for hvornår en post er oprettet?
Avatar billede htx98i17 Professor
07. februar 2002 - 15:30 #22
lav felttypen om til det der hedder TIMESTAMP(14)
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:33 #23
Jep, det gjorde jeg
så står der :

1/1 - 1970
01.00.00
Avatar billede htx98i17 Professor
07. februar 2002 - 15:35 #24
slet posterne og indsæt ny
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:42 #25
Det er det samme..

Jeg indsætter lige koden som den ser ud nu:

<?php
$post_query = mysql_query("SELECT *,UNIX_TIMESTAMP(TimeStamp) AS tid FROM posts WHERE (TopicID='$topicID') ORDER BY TimeStamp");
    while ($post = mysql_fetch_array($post_query)) {
?>
<TR>
<TD WIDTH=75% BGCOLOR="#FFFFFF" HEIGHT=28 VALIGN=TOP>
<TABLE class=text BORDER=0 CELLSPACING=0 CELLPADDING=5 WIDTH=100%>
<TR>
<TD>
<P><?php echo $post['Post'] ?>
</TD>
</TR>
</TABLE>
</TD>
<TD WIDTH=25% BGCOLOR="#f5f5f5" VALIGN=TOP>
<TABLE class=text BORDER=0 CELLSPACING=0 CELLPADDING=2 WIDTH=100% >
<TR>
<TD>
<P ALIGN=center><b>Skrevet af:</b><br>
<A HREF="mailto:<?php echo $post['Email'] ?>"><?php echo $post['Name'] ?></A>
<BR><BR>
<b>Skrevet den:</b><br>
<?php
echo date("j/n - Y", $post[tid]);
echo "<br>Kl. ";
echo date("H:i:s", $post[tid]);
?>
Avatar billede htx98i17 Professor
07. februar 2002 - 15:43 #26
jeg vil se et eksempel på en værdi i feltet TimeStamp  (igen)
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:44 #27
TIMESTAMP(14)
Avatar billede htx98i17 Professor
07. februar 2002 - 15:46 #28
en værdi
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:47 #29
Der tabte jeg tråden.. Forklar?
Avatar billede htx98i17 Professor
07. februar 2002 - 15:48 #30
arg :)
hvad kommer der i feltet TimeStamp når du tilføjer til tabellen ?
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:50 #31
Ahh..

00000000000000

(Lyder forkert ik?)
Avatar billede htx98i17 Professor
07. februar 2002 - 15:52 #32
ja
så nør du indsætter i db så tilføjer (TimeStamp) VALUES (NOW())
NOW() vil ligge et timestamp ind i feltet....
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:53 #33
Var det noget jeg skulle gøre, eller var det noget DEN gjorde?
Avatar billede htx98i17 Professor
07. februar 2002 - 15:56 #34
det er noget du lige skal gøre... den burde selv indsætte et timestamp hvis feltet er af TIMESTAMP, men du kan gøre det via din INSERT sql...
hvis du ik forstår, så post din INSERT sql her, så viser jeg det...
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 15:58 #35
function addpost () {
global $password,$email,$name,$post,$topicID;
    $timestamp = time();
    $new_password = addslashes($password);     $new_email = addslashes($email);
    $new_name = addslashes($name);
    $new_post = addslashes(nl2br(htmlspecialchars($post)));
    $insert = mysql_query("INSERT INTO posts VALUES ('NULL','$topicID','$new_name','$new_email','$new_password','$timestamp','$new_post')");
Avatar billede htx98i17 Professor
07. februar 2002 - 16:00 #36
function addpost () {
global $password,$email,$name,$post,$topicID;
    //$timestamp = time();
    $new_password = addslashes($password);    $new_email = addslashes($email);
    $new_name = addslashes($name);
    $new_post = addslashes(nl2br(htmlspecialchars($post)));
    $insert = mysql_query("INSERT INTO posts VALUES ('NULL','$topicID','$new_name','$new_email','$new_password',NOW(),'$new_post')");

prøv det og fortæl hvad den så indsætter...
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 16:02 #37
Wee..
20020207170008
Avatar billede htx98i17 Professor
07. februar 2002 - 16:02 #38
godt
virker det så?
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 16:04 #39
Ja, men det er stadig en time foran..
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 16:04 #40
$post_query = mysql_query("SELECT *,UNIX_TIMESTAMP(TimeStamp) AS tid FROM posts WHERE (TopicID='$topicID') ORDER BY TimeStamp");
Avatar billede htx98i17 Professor
07. februar 2002 - 16:06 #41
det er serverens ur der er en time foran så...

lav denne om:
<?php
echo date("j/n - Y", $post[tid]-3600);
echo "<br>Kl. ";
echo date("H:i:s", $post[tid]-3600);
?>
Avatar billede nestle-79 Nybegynder
07. februar 2002 - 16:10 #42
Jaaa..

Mange mange tak!
Avatar billede htx98i17 Professor
07. februar 2002 - 16:11 #43
np
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