我正在使用此代码循环遍历MySQL行:
$sql = "SELECT * FROM vwPublicServices2 ORDER BY Service_Date__c,
Service_Time__c";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "<table><tr><th>Service Date</th><th>Service Time</th>
<th>Church</th><th>Service</th><th>Service Leader</th></tr>";
while($row = $result->fetch_assoc()) {
// insert header stuff on change of $date1
if ($row["ServiceDate"] <> $date1) {
echo $row["ServiceDate"]. "(".$date1.")"."<br/>";
echo "<tr><td>" . $row["ServiceDate"]. "</td><td>" .
$row["Service_Time__c"]. "</td><td>" . $row["Location__c"]. "</td>
<td>" . $row["PublicName"]. "</td><td>" . $row["FullName"]."</td>
</tr>";
// set $date1 = row ServiceDate
$date1 = $row["ServiceDate"];
} else {
// echo row data to follow on previous - i.e date has not
changed
echo "<tr><td>" .
$row["ServiceDate"]. "</td><td>" .
$row["Service_Time__c"]. "</td><td>" .
$row["Location__c"]. "</td><td>" .
$row["PublicName"]. "</td><td>" .
$row["FullName"]."</td></tr>";
}
}
echo "</table>";
} else {
echo "0 results";
}
$conn->close();
每次行[&#34; ServiceDate&#34;]更改时,我想插入一些标题数据。 以下是一些结果:
我无法理解两件事 - 为什么日期检查&#39;一个约会对象&#39;即在第二行为什么是2017年5月14日与2017年5月13日相比?
另外,为什么没有出现第二个echo语句?
我认为我忽略了while循环工作方式的一些基本要点!这里有任何帮助非常感谢。感谢。
以下是使用与上述类似的数据对日期更改中的标头插入的说明。 (此网页通过其API从Salesforce中提取数据,并使用与上述MySQL代码中的数据类似的日期检查 - 但它使用For..Each循环遍历数据)