-4

就像标题说的那样,我怎样才能使用这个日期函数将它保存为一个字符串,或者我以后可以把它从数据库中取出来?

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');

这会显示日期之类的新闻:2012 仅当它必须是完整长度时:

 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>";
  }
     }
 }
4

2 回答 2

1

与其使用字符串日期,不如使用 MySQL 函数,稍后输出此值时,您可以简单地对其进行格式化。像这样使用 Now() 函数;

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

这将为您提供当前的日期时间。

于 2012-08-01T17:58:12.407 回答
1

我不同意任何说将数据库中的日期保存为 unix 时间戳的人(因为许多 PHP 程序员似乎出于懒惰而想要这样做)。这使得表中的数据更难以人类可读的形式读取,并且更难使用 MySQL 的日期/时间函数进行查询。

如果您只是想在查询时设置当前时间戳,我实际上建议在您的插入查询中使用 mysql 的 NOW() 函数,例如:

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

这消除了您在 PHP 中执行任何时间公式的需要。

于 2012-08-01T17:59:07.560 回答