2011-08-20 85 views
2

我將MySQL表爲使用this PHP代碼段HTML表格,它看起來是這樣的[HTML]:格式化MySQL數據輸出

/----------------------------------------\ 
| Name | Subscribed   | Duration | <- Column names 
|----------------------------------------| 
| Bob | 2011-08-20 04:07:01 | 60  | 
|----------------------------------------| 
| Ben | 2011-08-20 04:07:01 | 260  | 
\----------------------------------------/ 
  1. 我怎麼能不輸出列名的表? (名稱,訂閱,期限)從Bob開始。
  2. 是否有可能將該日期轉換爲如下所示:2011年8月20日4:07:01?
  3. 持續時間以秒爲單位,我怎樣才能在PHP中將它轉換爲分鐘(Duration(s)/ 60),以便它顯示1而不是60秒?
+0

你嘗試過什麼?如果您熟悉PHP和MySQL,應該很簡單。對於#1,請嘗試閱讀片段COMMENTS。 –

+0

不幸的是它是一篇文章,沒有評論部分:( – Timur

+1

有意見的代碼! –

回答

2

下面是代碼,根據您的要求:

// sending query 
$result = mysql_query("SELECT * FROM {$table}"); 
if (!$result) { 
    die("Query to show fields from table failed"); 
} 

$fields_num = mysql_num_fields($result); 

echo "<h1>Table: {$table}</h1>"; 
echo "<table border='1'>"; 
// printing table rows 
while($row = mysql_fetch_assoc($result)) 
{ 
    echo "<tr>"; 

    // $row is array... foreach(..) puts every element 
    // of $row to $cell variable 
    foreach($row as $key => $cell){ 
     if($key == 'Subscribed'){ 
      $cell = date('F j, Y H:i:s', strtotime($cell)); // format date August 20, 2011 4:07:01 
     } elseif($key == 'Duration'){ 
      $cell = $cell/60; // format time in minutes 
     } 
     echo "<td>$cell</td>"; 
    } 


    echo "</tr>\n"; 
} 
echo '</table>'; 
+1

謝謝你,男人!你用勺子餵我:D – Timur

+1

@Shef是一個很棒的傢伙,我也得到了他很多的幫助,他是百萬分之一:) –

0

關於日期,嘗試這樣的事情:

echo strftime("%F %d, %Y %g:%i:%S", strtotime($v["datum"]));

0

您可以使用此代碼刪除列名稱。這與您發佈的鏈接相同,但刪除了一些行。這也將以分鐘打印持續時間。

<html><head><title>MySQL Table Viewer</title></head><body> 
<?php 
$db_host = 'localhost'; 
$db_user = 'root'; 
$db_pwd = 'lptm42b'; 

$database = 'sphinx'; 
$table = 'spheres'; 

if (!mysql_connect($db_host, $db_user, $db_pwd)) 
    die("Can't connect to database"); 

if (!mysql_select_db($database)) 
    die("Can't select database"); 

// sending query 
$result = mysql_query("SELECT * FROM {$table}"); 
if (!$result) { 
    die("Query to show fields from table failed"); 
} 


echo "<h1>Table: {$table}</h1>"; 
echo "<table border='1'>"; 
// printing table rows 
while($row = mysql_fetch_assoc($result)) 
{ 
    echo "<tr>"; 

    // $row is array... foreach(..) puts every element 
    // of $row to $cell variable 
    foreach($row as $field => $value) 
    { 
     if ($field === 'Duration') 
     { 
      $value = $value/60; 
     } 
     echo "<td>$value</td>"; 
    } 
    echo "</tr>\n"; 
} 
mysql_free_result($result); 
?> 
</body></html>