-1

我是 php 新手,我刚刚开发了一个查看一些教程的代码。

<?php
ini_set('display_errors',1); 
 error_reporting(E_ALL);
include 'db_connect.php';

$query  = "SELECT id, date, ip, website FROM response";
$result = mysql_query($query);
$dateArray=array();


while($row = mysql_fetch_array($result)  or die (mysql_error()))
{
echo "Date :{$row['date']} <br>" .
     "IP : {$row['ip']} <br>" .
     "Url : {$row['website']} <br><br>";
}

?>

这以这种格式显示记录

Date :2012-11-23 17:07:57
IP : 198.169.127.145
Url : 2webdesign.com

Date :2012-11-25 21:45:11
IP : 198.169.127.145
Url : 2webdesign.com

Date :2012-11-25 21:45:51
IP : 198.169.127.145
Url : www.sarcan.ca

我想显示日期在顶部并且数据显示在日期下方的记录

例如

Date: 25 November 2012
Url 
IP

URl
IP

Date 26 Nov 2012
URL
IP

URL
IP

其次,我还希望可以选择将其导出到 Excelsheet。

任何人都可以看看代码并帮助我。

我知道这是非常基本的代码,因为我只有一个基本的想法哦 php

4

1 回答 1

0

请记住对您原始帖子的所有评论,因为它们都是有效的。这是您问题第一部分的可能解决方案(未经测试,因此可能需要稍作修改):

<?php
$query  = "SELECT DATE(date) as date, id, date as fulldate, ip, website FROM response ORDER BY date";

// do query...

$previousDate = "";
while($row = mysql_fetch_assoc($result)) {
    // check to see if the previous date is different to this date
    if($previousDate != $row['date']) { // date is different; start a new heading
    ?>
<div>Date :<?php echo $row['date']; ?></div>
    <?php } ?>
<ul>
   <li>IP :<?php echo $row['ip']; ?></li>
   <li>Url :<?php echo $row['website']; ?></li>
</ul>
<?php 
    // assign current date to the $previousDate variable.
    $previousDate = $row['date'];
} ?>    
于 2012-11-26T16:51:30.940 回答