0

我需要您帮助我从我的数据库中显示一些逗号分隔的条目。

我的主表架构看起来像这样

              |---|----------|-----------|----------------------------|
              |id | tab1     |  tab2     |          tab3              | 
              |---|----------|-----------|----------------------------|
              |1  |  state1  |  A-North  |   constA1,constA2,constA3  |
              |2  |  state2  |  B-South  |   constB1,constB2,constB3  |
              ---------------------------------------------------------

查询我正在努力工作

$query = mysql_query("SELECT * FROM `main` WHERE `tab1` = '$tab1'") 
         or die(mysql_error());

while($row=mysql_fetch_array($query)){                  
  $tab3 = explode(",", $row['tab3']);
  echo $tab3."<br>";
}       

我想从数据库中显示什么

               A-North      B-South
               ---------------------                   
               constA1      constB1
               constA2      constB2
               constA3      constB3

运行该查询时遇到的错误是 "Array" 。当我从 phpMyAdmin 运行相同的代码时,我得到了所需的行(结果)。

4

3 回答 3

4

Explode 在数组中为您提供结果,因此您需要另一个循环通过 $tab3 数组打印结果。请参阅 PHP 手册中的定义:

返回一个字符串数组,每个字符串都是通过在由字符串分隔符形成的边界上拆分它而形成的字符串的子字符串。

例如:

for ($i = 0; $i < sizeof($tab3); $i++) {
    echo $tab3[$i].'<br />';
}
于 2012-06-22T10:42:51.763 回答
1

explode 将返回数组,print_r($tab3)您可以查看项目并通过以下方式访问它

echo $tab[0];
echo $tab[1];
echo $tab[2];

ETC.....

于 2012-06-22T10:43:01.717 回答
0

explode ($separator,$string) returns an array. You need to step through the array to create the table columns.

Also, as you want the data in two columns, create these separately as two separate tables and then include those into a single table as two separate cells

Finally, redesign your database table. You'll thank us in the end

于 2012-06-22T10:44:44.933 回答