Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数据(动态结果)拆分为3列-php mysql_Php_Mysql_Split_Html Table_Multiple Columns - Fatal编程技术网

将数据(动态结果)拆分为3列-php mysql

将数据(动态结果)拆分为3列-php mysql,php,mysql,split,html-table,multiple-columns,Php,Mysql,Split,Html Table,Multiple Columns,需要将结果(dynamic-mysql)拆分为列(根据下面的define$cols) 注:如果任何人有任何其他格式的解决方案,请让我知道 但我需要如下信息: 1 Prda 1.4 | 2 prdan 2.3 | 3 prdbc 3.1 4 prdf 0.02 | 5 prdcv 1.0 | 6 prdd 0.9 7 prdc 0.3 | 8 prdbn 2.8 | 9 prdf 0.5 更新: 如果有10条记录: 1 Prda 1.4 | 2 p

需要将结果(dynamic-mysql)拆分为列(根据下面的define$cols)


注:如果任何人有任何其他格式的解决方案,请让我知道

但我需要如下信息:

1 Prda 1.4  |  2 prdan  2.3  |  3  prdbc  3.1
4 prdf 0.02 |  5 prdcv  1.0  |  6  prdd   0.9
7 prdc 0.3  |  8 prdbn  2.8  |  9  prdf   0.5
更新:

如果有10条记录:

1 Prda 1.4  |  2 prdan  2.3  |  3  prdbc  3.1
4 prdf 0.02 |  5 prdcv  1.0  |  6  prdd   0.9
7 prdc 0.3  |  8 prdbn  2.8  |  9  prdf   0.5
如果有11条记录:

1 Prda 1.4  |  2 prdan  2.3  |  3  prdbc  3.1
4 prdf 0.02 |  5 prdcv  1.0  |  6  prdd   0.9
7 prdc 0.3  |  8 prdbn  2.8  |  9  prdf   0.5

感谢cols=3的样品。请调整您的数据库名称及其列。希望这个结果和你期望的一样

$NoOfColumns = 3;
$dataArr = $matrixArr = array();

$query = "SELECT * FROM testDb ORDER BY prdname";
$result = mysqli_query($conn, $query) or die("error getting data");
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
    array_push($dataArr, $row);
}
$totalCnt = count($dataArr);
$NoOfRows = floor($totalCnt / $NoOfColumns);
if ($havRem = $totalCnt % $NoOfColumns) {
    $NoOfRows++;
}
$matrixArr = array_chunk($dataArr , $NoOfRows);

//echo "<pre>";print_r($dataArr);echo "</pre>";
//echo "<pre>";print_r($matrixArr);echo "</pre>";

echo "<table border=1>";
for ($row = 0; $row < $NoOfRows; $row++) {
    echo "<tr>";
    $srno = $row+1;
    for ($col = 0; $col < $NoOfColumns; $col++) {        
    echo'<td align="center" valign="top">';
            if ($srno<=$totalCnt) {
             echo   '<table  border="1px" cellspacing="0" cellpadding="0" style="border-collapse:collapse;">
                    <tr align="center" valign="top">';
                            echo '<td class="dateis" align="center" valign="top" width="35px"> <strong>'.$srno.'</strong> </td>';
                            echo '<td class="dateis" align="center" valign="top" width="100px">'.$matrixArr[$col][$row]['prdname'].'</td>';
                            echo '<td class="dateis" align="center" valign="top" width="50px">'.$matrixArr[$col][$row]['prdwgh'].'</td> 
                                </tr>';

                   echo'</tr>
                </table>';
            }
    echo '</td>';
    $srno = $srno+$NoOfRows;
}
echo "</tr>";
}
echo "</table>";
$NoOfColumns=3;
$dataArr=$matrixArr=array();
$query=“按prdname从testDb订单中选择*”;
$result=mysqli_query($conn$query)或die(“获取数据时出错”);
而($row=mysqli\u fetch\u数组($result,mysqli\u ASSOC)){
数组推送($dataArr,$row);
}
$totalCnt=计数($dataArr);
$NoOfRows=楼层($totalCnt/$NoOfColumns);
如果($havRem=$totalCnt%$NoOfColumns){
$NoOfRows++;
}
$matrixArr=array\u chunk($dataArr,$NoOfRows);
//回声“;打印(数据阵列);回声“;
//回声“;印刷品($matrixArr);回声“;
回声“;
对于($row=0;$row<$NoOfRows;$row++){
回声“;
$srno=$row+1;
对于($col=0;$col<$NoOfColumns;$col++){
回声';

如果($SRNOI如果任何人有不同的解决方案..将这样做…谢谢任何人请帮助我..假设$cols=4,那么它将显示在哪里?然后将有第四列…在last@santhy,你能告诉我$cols=3的解决方案吗…感谢它的工作,但正如你所知,我的数据是动态的,因此如果我有10条记录…那么按照上面的结构只显示9条记录…10条记录是隐藏的…我也用$NoOfColumns=4进行了测试;它工作但相同..10条记录不显示…哦,你的意思是,根据数据计数,列数将增加。比如9,然后3,10到12,然后4列,13到15,然后5等..没有根据其变量设置numberofcol..但是r现在需要更新。请回答我的更新问题
1 Prda 1.4     |  5 prdcv  1.0    |  9  prdf   0.5
2 prdan  2.3   |  6 prdd   0.9    |  10 prdf   2.5
3 prdbc  3.1   |  7 prdc   0.3    |  11 prdfd  2.1
4 prdf   0.02  |  8 prdbn  2.8    | 
$NoOfColumns = 3;
$dataArr = $matrixArr = array();

$query = "SELECT * FROM testDb ORDER BY prdname";
$result = mysqli_query($conn, $query) or die("error getting data");
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
    array_push($dataArr, $row);
}
$totalCnt = count($dataArr);
$NoOfRows = floor($totalCnt / $NoOfColumns);
if ($havRem = $totalCnt % $NoOfColumns) {
    $NoOfRows++;
}
$matrixArr = array_chunk($dataArr , $NoOfRows);

//echo "<pre>";print_r($dataArr);echo "</pre>";
//echo "<pre>";print_r($matrixArr);echo "</pre>";

echo "<table border=1>";
for ($row = 0; $row < $NoOfRows; $row++) {
    echo "<tr>";
    $srno = $row+1;
    for ($col = 0; $col < $NoOfColumns; $col++) {        
    echo'<td align="center" valign="top">';
            if ($srno<=$totalCnt) {
             echo   '<table  border="1px" cellspacing="0" cellpadding="0" style="border-collapse:collapse;">
                    <tr align="center" valign="top">';
                            echo '<td class="dateis" align="center" valign="top" width="35px"> <strong>'.$srno.'</strong> </td>';
                            echo '<td class="dateis" align="center" valign="top" width="100px">'.$matrixArr[$col][$row]['prdname'].'</td>';
                            echo '<td class="dateis" align="center" valign="top" width="50px">'.$matrixArr[$col][$row]['prdwgh'].'</td> 
                                </tr>';

                   echo'</tr>
                </table>';
            }
    echo '</td>';
    $srno = $srno+$NoOfRows;
}
echo "</tr>";
}
echo "</table>";