2012-08-01 11 views
-4

제목과 마찬가지로이 날짜 함수를 문자열로 저장하거나 나중에 데이터베이스에서 가져올 수 있습니까? 2012는 전체 길이 수있는 경우에만 :날짜를 데이터베이스에 저장하고 PHP로 가져 오기

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 
$result = mysql_query("SELECT * FROM $tbl_name ORDER BY newsid DESC"); 
$count = mysql_num_rows($result); 
while($row = mysql_fetch_array($result)){ 
$count = mysql_num_rows($result); 
    echo "<table class='newsList'>"; 

    echo "<tr><div id='nav'><th align='left'>".$row['Nieuwstitel']."</th> 
       <th class='right'>".$row['Postdatum']."</div></tr>"; 
    echo "<tr><td colspan='2'>".$row['Nieuwsbericht']."<br/></td></tr>"; 
    echo "</table>"; 
    if ($count == 0){ 
    echo "<center><p>No news at the moment!</p><p>&nbsp;</p></center>"; 
    } 
    } 
} 
+0

날짜를 datetime 또는 timestamp (예 : MySQL)로 저장 한 다음 사용/표시 할 때 형식을 지정하십시오. http://dev.mysql.com/doc/refman/5.0/en/datetime.html –

+1

Google 검색은 매우 쉽습니다. – fdomig

답변

1

가 대신 문자열 날짜를 사용하는 이유를 사용하지 않는 MySQL의 기능이 날짜 같은 소식을 표시

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 
$newsTitel = $_POST['title']; 
$submitDate = date('Y-m-d g:i:s A'); 
$newsContent = $_POST['newstext']; 
mysql_query("INSERT INTO $tbl_name (Nieuwstitel, Nieuwsbericht, Postdatum) 
    VALUES('$newsTitel', '$newsContent', '$submitDate') "); 
echo "Het bericht is successvol geplaatst!"; 
echo date('Y-m-d g:i:s A'); 

나중에이 값을 출력하면 간단하게 형식을 지정할 수 있습니다. 다음과 같이 Now() 함수를 사용하십시오.

mysql_query("INSERT INTO $tbl_name (Nieuwstitel, Nieuwsbericht, Postdatum)  
VALUES('$newsTitel', '$newsContent', NOW()) "); 

이렇게하면 현재 날짜 시간이 표시됩니다.

1

유닉스 타임 스탬프로 데이터베이스에 날짜를 저장하는 사람은 동의하지 않을 것입니다. 많은 PHP 프로그래머가 게으름에서 벗어나고 싶어하는 것처럼 보입니다. 이렇게하면 테이블의 데이터를 사람이 읽을 수있는 형식으로 읽기가 어려워지고 MySQL의 날짜/시간 함수를 사용하여 쿼리하기가 더 어려워집니다. 그냥 쿼리의 시간에 현재의 타임 스탬프를 설정하려는 경우

, 실제로처럼 삽입 쿼리 NOW() 함수는 MySQL이있어 사용하는 것이 좋습니다 것입니다 :

mysql_query("INSERT INTO $tbl_name (Nieuwstitel, Nieuwsbericht, Postdatum) VALUES('$newsTitel', '$newsContent', NOW()) "); 

이것은 당신에 대한 필요성을 제거한다 PHP에서 언제든지 공식을 작성할 수 있습니다.

+0

글쎄, 웹 페이지에 실제 날짜가 표시되지 않습니다. 아직도 2012라고 말합니다 –

+0

HTML 및 CSS와 관련이있을 수 있습니다. 날짜를 출력하는 태그가 제대로 닫히지 않았습니다. 페이지 소스의 값이 '2012'인지 확인할 수 있습니까? PostDatum에 대해 데이터베이스의 datetime 필드를 실제로 사용하고 있는지 확인할 수 있습니까? –

관련 문제