Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.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/html/75.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
使用PHP将多个SQL列合并到HTML表的单个列中_Php_Html_Mysql - Fatal编程技术网

使用PHP将多个SQL列合并到HTML表的单个列中

使用PHP将多个SQL列合并到HTML表的单个列中,php,html,mysql,Php,Html,Mysql,是否可以将MySQL表中多个列的数据合并到HTML表中的一个列中,其中每个记录都是HTML表中的新行 | - - - - - - - - - - - - | | Column1 | | - - - - - - - - - - - - | | Blue | | Green | | Yellow | | Car | | T

是否可以将MySQL表中多个列的数据合并到HTML表中的一个列中,其中每个记录都是HTML表中的新行

| - - - - - - - - - - - - |
| Column1                 |
| - - - - - - - - - - - - |
| Blue                    |
| Green                   |
| Yellow                  |
| Car                     |
| Truck                   |
| Van                     |
| - - - - - - - - - - - - |
在本例中,MySQL中的表有两列(Col1、Col2)。Col1中的数据显示在HTML表的第一列中。MySQL中Col2的数据显示在HTML表的第二列中。换句话说,HTML表与MySQL表的布局匹配

<?php
$con = new mysqli('domain', 'username', 'password', 'database');
$sql = "select * from table1";
$sql_query = mysqli_query($con, $sql);

while ($row = mysqli_fetch_array($sql_query)) {
  $col1 = $row['col1'];
  $col2 = $row['col2'];

  echo "<table>";
  echo "<tr>";
  echo "<td> $col1 </td>";
  echo "<td> $col2 </td>";
  echo "</tr>";
  echo "</table>";
}
?>
HTML表格:

| - - - - | - - - - - - - |
| Column1 |    Column2    |
| - - - - | - - - - - - - |
| Blue    |    Car        |
| Green   |    Truck      |
| Yellow  |    Van        |
| - - - - | - - - - - - - |
| - - - - - - - - - - - - |
| Column1                 |
| - - - - - - - - - - - - |
| Blue Car                |
| Green Truck             |
| Yellow Van              |
| - - - - - - - - - - - - |
如果将$col1和$col2放在一个TD标记中,则会使$col1和$col2都显示在HTML表的col1中。但是,$col1和$col2都显示在同一单元格中

<?php
$con = new mysqli('domain', 'username', 'password', 'database');
$sql = "select * from table1";
$sql_query = mysqli_query($con, $sql);

while ($row = mysqli_fetch_array($sql_query)) {
  $col1 = $row['col1'];
  $col2 = $row['col2'];

  echo "<table>";
  echo "<tr>";
  echo "<td> $col1 $col2 </td>";
  echo "</tr>";
  echo "</table>";
}
?>
是否可以在HTML表的第1列中回显$Col1和$Col2,并使每个记录位于HTML表中自己的行中

| - - - - - - - - - - - - |
| Column1                 |
| - - - - - - - - - - - - |
| Blue                    |
| Green                   |
| Yellow                  |
| Car                     |
| Truck                   |
| Van                     |
| - - - - - - - - - - - - |

您的HTML是有效的,但不正确。这可能是结果表的结构

创建一个新数组,在其中存储
col2
值,以便在所有
col1
值之后显示。完成第二个
col2
显示值的
col1
值循环后

$col2 = array();
echo "<table>";
while ($row = mysqli_fetch_array($sql_query)) {
  $col1 = $row['col1'];
  $col2[] = $row['col2'];

  echo "<tr>";
  echo "<td> $col1 </td>";
  echo "</tr>";
}
for($i = 0; $ < count($col2); $i++){
  echo "<tr>";
  echo "<td> $col2[$i] </td>";
  echo "</tr>";
}
echo "</table>";
$col2=array();
回声“;
while($row=mysqli\u fetch\u数组($sql\u query)){
$col1=$row['col1'];
$col2[]=$row['col2'];
回声“;
回显“$col1”;
回声“;
}
对于($i=0;$<计数($col2);$i++){
回声“;
回声“$col2[$i]”;
回声“;
}
回声“;

您的HTML是有效的,但不正确。这可能是结果表的结构

创建一个新数组,在其中存储
col2
值,以便在所有
col1
值之后显示。完成第二个
col2
显示值的
col1
值循环后

$col2 = array();
echo "<table>";
while ($row = mysqli_fetch_array($sql_query)) {
  $col1 = $row['col1'];
  $col2[] = $row['col2'];

  echo "<tr>";
  echo "<td> $col1 </td>";
  echo "</tr>";
}
for($i = 0; $ < count($col2); $i++){
  echo "<tr>";
  echo "<td> $col2[$i] </td>";
  echo "</tr>";
}
echo "</table>";
$col2=array();
回声“;
while($row=mysqli\u fetch\u数组($sql\u query)){
$col1=$row['col1'];
$col2[]=$row['col2'];
回声“;
回显“$col1”;
回声“;
}
对于($i=0;$<计数($col2);$i++){
回声“;
回声“$col2[$i]”;
回声“;
}
回声“;

不需要有两个循环。它可以在单循环中完成。在不同变量中分离col1和col2值。最后打印出来

<?php
$con = new mysqli('domain', 'username', 'password', 'database');
$sql = "select * from table1";
$sql_query = mysqli_query($con, $sql);
$str = "<table>";
$str_col2 = "";
while ($row = mysqli_fetch_array($sql_query)) {
  $col1 = $row['col1'];
  $col2 = $row['col2'];    

  $str .= "<tr><td> $col1 </td></tr>";
  $str_col2 .= "<tr><td> $col2 </td></tr>";
}
echo $str . $str_col2 . "</table>";
?>

不需要有两个循环。它可以在单循环中完成。在不同变量中分离col1和col2值。最后打印出来

<?php
$con = new mysqli('domain', 'username', 'password', 'database');
$sql = "select * from table1";
$sql_query = mysqli_query($con, $sql);
$str = "<table>";
$str_col2 = "";
while ($row = mysqli_fetch_array($sql_query)) {
  $col1 = $row['col1'];
  $col2 = $row['col2'];    

  $str .= "<tr><td> $col1 </td></tr>";
  $str_col2 .= "<tr><td> $col2 </td></tr>";
}
echo $str . $str_col2 . "</table>";
?>


您希望结果与问题中的最后一个数字一样??您希望结果与问题中的最后一个数字一样??这非常有效。非常感谢您提供的解决方案Aju!很高兴听到。。。!!谢谢:)您是在谈论DB中的结果为空的场景吗?这非常有效。非常感谢您提供的解决方案Aju!很高兴听到。。。!!谢谢:)您是在谈论DB中的结果为空的场景吗?这是一个迷人的解决方案。我没有考虑在“while”循环之后添加“for”循环。我要用这个做实验。这实际上对我正在研究的场景也很有用,因为我实际上简化了这个问题,使问题更容易理解:)是的,@AjuJohn对这个问题有很好的答案,你必须和他一起去。这是一个迷人的解决方案。我没有考虑在“while”循环之后添加“for”循环。我要用这个做实验。这实际上对我正在研究的场景也很有用,因为我实际上简化了这个问题,使问题更容易理解:)是的,@AjuJohn对这个问题有很好的答案,你必须和他一起去。