【发布时间】:2011-06-19 13:53:15
【问题描述】:
好的,所以我正在通过 php 从 SQL Server 2008 将作业数据提取到 html 表中。每个工作可以/确实有多个任务。我正在使用 1 个 while 循环(此处称为“外部”while)和另一个循环在前一个循环的一个单元格中显示任务(此处称为“内部”while)来显示每个作业我发现它退出了“内部”while 循环,但不会触发下一轮“外部”while 循环。如果我在一切正常的情况下将内部注释掉。
$sql = "SELECT * FROM [euroJobSrv].[dbo].[Job],[euroJobSrv].[dbo].[Site]";
$result = dbQuery($sql);
while($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC)){
$sql1 = "SELECT Task_Type FROM [euroJobSrv].[dbo].[JobTask] WHERE Task_Job_ID='".$row['Job_ID']."'";
$result1 = dbQuery($sql1);
$Site_Address = str_replace(',', ', <br>', $row['Site_Address']);
$days = $row['Job_Finish_Date'] - $row['Job_Start_Date'] + '1';
echo " <tr>
<th width=50> Job ID: </th>
<th width=50> Site Address:</th>
<th width=50> Start Date: </th>
<th width=50> Finish Date: </th>
<th width=50> Days: </th>
<th width=50> Overnight: </th>
<th width=50> Tasks: </th>
</tr>";
echo " <tr>
<td width=50>".$row['Job_ID']."</td>
<td width=50>".$Site_Address."</td>
<td width=50>".$row['Job_Start_Date']."</td>
<td width=50>".$row['Job_Finish_Date']."</td>
<td width=50>".$days."</td>
<td width=50>".$row['Job_Overnight']."</td>
<td width=50><ul>";
while ($row1 = sqlsrv_fetch_array($result1, SQLSRV_FETCH_ASSOC)){
echo "<li>".$row1['Task_Type']."</li>";}
echo" <ul></td>
<td><a href='include/job/modify.php?j=".$row['Job_ID']."'>modify</a></td>
</tr>";
}
【问题讨论】:
-
sqlsrv 驱动程序没有与 data_seek 函数等效的函数,这似乎是大多数类似示例的答案
标签: php sql-server while-loop