使用PHP和spry或类似的东西从mysql显示两个表

时间:2012-11-04 17:16:21

标签: php html mysql html-table spry

我正在尝试使用PHP和spry之类的东西在mysql中显示来自两个不同表的数据。最初,我想使用spry选项卡式面板,但我不确定这是否可行。我希望从一个表中填充选项卡名称,并从另一个表填充该选项卡的内容。这是基本的HTML ......

<div id="TabbedPanels1" class="TabbedPanels">
  <ul class="TabbedPanelsTabGroup">
    <li class="TabbedPanelsTab" tabindex="0">NAME_1 POPULATED FROM FIRST TABLE</li>
    <li class="TabbedPanelsTab" tabindex="0">NAME_2 POPULATED FROM FIRST TABLE</li>
  </ul>
  <div class="TabbedPanelsContentGroup">
    <div class="TabbedPanelsContent">
    <table border="0" cellspacing="5" cellpadding="5">
        <tr>
<!-- CONTENT POPULATED FROM SECOND TABLE!-->
          <td width="450">&nbsp;</td>
          <td width="50">&nbsp;</td>
          <td width="50">&nbsp;</td>
          <td width="50">&nbsp;</td>
          <td width="50">&nbsp;</td>
        </tr>
      </table></div>
   </div>
</div>
</div>

我认为我遇到的问题是我无法将标签与内容相关联。由于选项卡首先列在html ...然后是内容。我不知道这是否可能或是否有更好的方法。

1 个答案:

答案 0 :(得分:0)

这取决于您想要获得的最终结果。例如:

如果你想要的唯一的东西是从表中获取的选项卡列表,并且从另一个数据库表中完成它们的内容,你只需要进行2次查询,每个表一次,并将结果保存在变量中。然后,您可以在变量内部完成HTML结构,最后在最后对该变量进行回显。

// $result1 has the info of the tab names.
// $result2 has the contents of each tab.
$final_html='<div id="TabbedPanels1" class="TabbedPanels">
             <ul class="TabbedPanelsTabGroup">';

while($row1=$result1->mysqli_fetch_array()){
     $final_html.="<li class=\"TabbedPanelsTab\" tabindex=\"0\">$row1[0]</li>";
}

$final_html.='</ul><div class="TabbedPanelsContentGroup">
              <div class="TabbedPanelsContent">
              <table border="0" cellspacing="5" cellpadding="5">
              <tr>';

while($row2=$result2->mysqli_fetch_array()){
     $final_html.="<td width=\"450\">$row2[0]</td>";
}

$final_html.='</tr></table></div></div></div></div>';

echo $final_html;

如果问题是如何使标签工作,我建议使用Jquery

主要思想是在选项卡和选项卡内容中使用基于相同变量的ID。例如,一个选项卡可以命名为“tab1”,其内容可以命名为“tab1content”。

如果您想了解Jquery部分的更多细节,请发布一些代码,看看您希望这些标签如何工作。