चूंकि आपके परिणाम पहले से ही दिनांक के अनुसार क्रमित हैं, आप बस पिछली तिथि को एक चर में संग्रहीत कर सकते हैं और हर बार यह परिवर्तन होने पर एक नई तालिका बना सकते हैं।
$olddate = '';
while($row = mysql_fetch_array($result))
{
$fdate = date('M jS, Y l', strtotime($row['date']));
if ( $olddate != $fdate ) { // date has changed:
// end the previous table (if it exists)
if ( $olddate != '' ) {
echo "</table>"
}
// start the new table. Do something with $fdate here if you like
echo "
<h3>$fdate</h3>
<table border='1'>
<tr class='top'>
...
</tr>";
}
// print a row as before.
echo "<tr>";
....
}
// end the last table
echo "</table>";
मूल रूप से केवल एक चीज जो बदली है वह यह है कि $fdate
$olddate
. में भी स्टोर किया जाता है . जब हम एक नई पंक्ति को संसाधित करते हैं, यदि तिथि बदल गई है (यानी $olddate != $fdate
), हम एक नई तालिका बनाते हैं।
mysql परिणाम में प्रत्येक पंक्ति के लिए हम अभी भी पहले की तरह एक तालिका पंक्ति उत्पन्न करते हैं (आप कुछ बदलाव करना चाह सकते हैं जैसे दिनांक कॉलम को और शामिल नहीं करना)।