2014-03-29 48 views
2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <link rel='stylesheet' type='text/css' href='style.css'/> 
<title>Files</title> 
</head> 

<body class="body"> 
<?php 
$prodnum = $_GET['prodnum']; 

      $con=mysqli_connect("localhost","root","","sp"); 
      if (mysqli_connect_errno($con)) 
      { 
      echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
      } 
       $res = mysqli_query($con,"SELECT * FROM product_info WHERE prodnum = '$prodnum'") OR die(mysqli_error($con)) ; 


          echo ' 
              <table id="table"> 
              <tr> 
              <td> <h3> Product Information </h3> </td> 
              </tr>'; 


           while($row = mysqli_fetch_array($res)){ 
              $prodnum=$row[0]; 
              $farm=$row[1]; 
              $sh=$row[2]; 
              $sdate=$row[3]; 
              $pdate=$row[4]; 
              $edate=$row[5]; 
              $cert=$row[6]; 
              $shsite=$row[9]; 
              $farmsite=$row[10]; 


              echo'<tr> 
              <td> <b> Product Number:</b> '.$prodnum.' 
              </td> 
              </tr> 
              <tr> 
              <td> <b> Farm: </b> <a class="links" href='.$farmsite.'> '.$farm.' </a> 
              </td> 
              </tr> 
              <tr> 
              <td> <b> Slaughter House: </b> <a class="links" href='.$shsite.'> '.$sh.' </a> 
              </td> 
              </tr> 
              <td> <b> Date Slaughtered: </b>'.$sdate.' 
              </td> 
              </tr> 
              <tr> 
              <td><b> Date Produced: </b>'.$pdate.' 
              </td> 
              </tr> 
              <tr> 
              <td> <b> Expiration Date: </b> '.$edate.' 
              </td> 
              </tr> 
              <tr> 
              <td> <b> Certified by: </b> '.$cert.' 
              </td> 
              </tr> 
              </table>' 
              ; 
           } 


?> 
</body> 
</html> 

此代碼顯示來自我的數據庫的數據。我不知道如何以可讀的格式在mysql中顯示日期。這段代碼的結果是2014-03-04,但我想像2013年3月4日那樣顯示它。日期的數據類型是mysql數據庫中的日期。 我只看到轉換時間戳數據類型。我該怎麼做?我怎樣才能把它放在和標籤?謝謝。php中的日期人類可讀的格式

+1

** **危險:你是**易受[SQL注入攻擊(HTTP://鮑比你需要[防守](http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php)。 – Quentin

回答

1

試試這個功能

date('F d, Y',strtotime($your_date_variable)); 

有關更多信息,請here

+0

如何在tr標籤內放置函數日期? ​​DATE – duderbear

+0

like date('d-m-Y',$ sdate); – Sadikhasan

+0

這不是OP要求的格式。這不會產生「2013年3月4日」,但「04-03-2013」​​ –

1
echo date("F d, y",strtotime($pdate)); 

使用PHP日期函數來格式化任何日期時間,並使用PHP的strtotime函數的任何字符串轉換爲日期。它返回「2014年3月29日」

+0

不錯,你花時間來構建格式,OP要求。參考手冊鏈接提高了答案的教育價值。 –

1

在繼續之前,看看評論SQL注入

你可以讓MySQL的與date_format功能爲你做。相反,選擇的*做這樣的事情:

SELECT DATE_FORMAT(name_of_datefield, '%M %d, %Y') as slaughterdate, ... FROM ... 

或者,您可以通過使用date功能做到這一點在PHP端:

date('F d, Y', $sdate); 

因此,對於你的代碼,你可以改變:

$sdate=$row[3]; 
$pdate=$row[4]; 
$edate=$row[5]; 

分成

$sdate = date('F d, Y', $row[3]); 
$pdate = date('F d, Y', $row[4]); 
$edate = date('F d, Y', $row[5]); 
0

爲什麼不使用DateTime

$date = new DateTime('2000-01-01'); 
echo $date->format('jS F Y'); 

所以你的情況u必須做,因爲

$date = new DateTime($pdate); 
echo $date->format('jS F Y');