2017-12-18 55 views
0

我有从Oracle中选择视图,它返回11行。 我想获取数据并将它们打印成4列。应该是这样的:将oracle提取的数据拆分为4列

Item 1  Item 2  Item 3  Item 4 
Item 5  Item 6  Item 7  Item 8 
Item 9  Item 10 Item 11  Item 12 
Item 13....... 

这是我的代码为2列。但如何做4列?

此外,我不明白为什么oci_num_rows显示的行数后,才while(oci_fecth_data)

<?php 
$stmt1 = oci_parse($conn, $query1); 
oci_execute($stmt1); 
$mssqlaray = array(); 
$index = 0; 
while (($row1 = oci_fetch_array($stmt1, OCI_BOTH))) 
{ 
    $mssqlaray[$index] = $row1; 
    $index++; 
} 

for($j = 0; $j < oci_num_rows($stmt1); $j+=2) 
{ 
    echo ' 
    <div class="col-sm-6"> 
     <div class="checkbox checkbox-primary"> 
      <input id="checkbox1'.$mssqlaray[$j][0].'" type="checkbox"> 
      <label for="checkbox1'.$mssqlaray[$j][0].'">'.$mssqlaray[$j][1].' </label> 
     </div> 
    </div>'; 
} 
for($j = 1; $j < oci_num_rows($stmt1); $j+=2) 
{ 
    echo ' 
    <div class="col-sm-6"> 
     <div class="checkbox checkbox-primary"> 
      <input id="checkbox1'.$mssqlaray[$j][0].'"type="checkbox"> 
      <label for="checkbox1'.$mssqlaray[$j][0].'">'.$mssqlaray[$j][1].'</label> 
     </div> 
    </div>'; 
} 
+0

'oci_num_rows':返回语句执行过程中受影响的行数(从[这里]采取的措施(http://php.net/manual/en/function.oci-num-rows.php))。因此,在我提取受影响的数据之后,它只能知道有多少行受到影响。 每行有多少项? – Geshode

+0

为什么你在这里有两个循环?这对我没有意义。 –

+0

@Geshode for'sqlsrv'它在'sqlsrv_query'之后工作我可以使用'sqlsrv_num_rows',但它对于'OCI'工作不同。每行有2列。 – Orik0

回答

1

这应该是你想要的东西,如果我理解正确。当然,你仍然可以添加div或类的东西。我想,我只是给你我的方法的骨架。

<?php 
$stmt1 = oci_parse($conn, $query1); 
oci_execute($stmt1); 
$mssqlaray = array(); 
$index = 0; 
while (($row1 = oci_fetch_array($stmt1, OCI_BOTH))) 
{ 
    $mssqlaray[$index] = $row1; 
    $index++; 
} 

echo '<table>'."\n"; 
echo '<tr>'."\n"; 

for($i = 0; $i < count($mssqlaray); $i++) 
{ 
    echo '<td>'.$mssqlaray[$i].'</td>'; 
    if(i == 3 || i == 7 || i == 11){ 
     echo '</tr>'."\n"; 
     echo '<tr>'."\n"; 
    } 
} 
echo '</tr>'."\n"; 
echo '</table>."\n"; 
?> 
+0

我也做了同样的事情,有一个问题需要依次显示数据。但我得到了1列2点的数据,2列4个数据和1个第1列数据( – Orik0

+0

我不明白你的意思到底是什么问题?请更具体些。 – Geshode

+0

我编辑它,我现在希望它是更清晰 – Orik0