php - 使用 php 选择下拉列表的所有选项

标签 php html mysql

我完全厌倦了这个编码部分只是为了添加全选选项,我已经成功添加了全选,但问题是如何使用该全选选项从 mysql 数据库获取数据。

我在 ma 数据库中有 8 个表,对于搜索框,我必须选择用于查询搜索词的表,它将显示所选表中查询词的信息。

这是上面的代码:

<form method="post" action="test3.php" name="search_form">
 <input type="text" name="search" size=15 maxlength=15 placeholder = "Gene Symbol"/>
        <select name="table[]" id = "table[]" size = "0" multiple>
            <option selected="selected"></option>
            <option value="infla_info">Inflammation</option>
            <option value="diet_info">diet</option>
            <option value="obesity_info">obesity</option>
            <option value="stress_info">stress</option>
            <option value="athero_info">atherosclerosis</option>
            <option value="retino_info">Diabetic Retinopathy</option>
            <option value="nephro_info">Diabetic Nephropathy</option>
            <option value="neuro_info">Diabetic Neuropathy</option>
        </select>
        <input type="Submit" name="Submit" value="Gene Search"/> 

这里值=表名,对于每个表它都在工作,对于多个表也它工作,但是当它选择所有的时候它完全失败。 我也添加了全选选项,但因为它不适用于获取。

谁能建议我如何在 mysql 数据库的所有表中选择搜索词?这对于选择我认为的所有选项将是有益的。其次,选择所有选项的 value = ""中应该有什么。

case "infla_info":
  //echo "<h1> Inflammation </h1>";

  $sql = mysqli_query($con, "select * from infla_info where Gene_symbol = '$search'");
  $num_row=$sql->num_rows;

  if ($num_row == 0)
  {
    echo "<font color = 'red'>Gene not found in Inflammation.</font>";
  }
  else
  {
    for($i=0;$i<$num_row;$i++)
    {
      $result=mysqli_fetch_assoc($sql);
      echo "
        <table border='0', width='1000', align='center'>
        <tr>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Theme</font></th>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Locus_Id</font></th>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Gene_Symbol</font></th>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Gene_Name</font></th>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Synonyms</font></th>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Chromosome</font></th>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Gene Summary</font></th>
        <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Homologene_Id</font></th>
        </tr>
      ";

      echo "<tr bgcolor = '#D3D3D3'>";
      echo "<td align=center>";
      echo 'Inflammation'; 
      echo "</td>";

      $strName2 = $result["Locus_id"];
      $strLink2 = "<a href = 'infla_gene_go.php?gene_id=" . $result['Locus_id'] . "'>" . $strName2 . "</a>";
      echo "<td align=center><font color = 'black'>" . $strLink2 . "</font></td>";
      $strName1 = $result["Gene_symbol"];
      $strLink1 = "<a href = 'infla_gene_symbol.php?gene_symbol=" . $result['Gene_symbol'] . "'>" . $strName1 . "</a>";
      echo "<td align=center><font color = 'black'>" . $strLink1 . "</font></td>";
      echo "<td align=center><font color = 'black'>" . $result['Gene_name'] . "</font></td>";
      echo "<td align=center><font color = 'black'>" . $result['Synonymns'] . "</font></td>";
      echo "<td align=center><font color = 'black'>" . $result['Chromosome_no'] . "</td>";
      echo "<td height='50px'><div style='height:200px;  overflow:scroll;'><font color = 'black'>" . $result['Gene_summary'] . "</font></div></td>";
      $strName = $result["Homologene_id"];
      $strLink = "<a href = 'infla_homologene.php?homologene_id=" . $result['Homologene_id'] . "'>" . $strName . "</a>"; 
      echo "<td align=center>" . $strLink . "</td>";
      echo "</tr>";
    }
  }
  break;


case "stress_info":

  $sql = mysqli_query($con, "select * from stress_info where Gene_symbol = '$search'");
  $num_row=$sql->num_rows;

  if ($num_row == 0)
  {
    echo "<font color = 'red'>Gene not found in Stress.</font>";
  }
  else
  {
    for($i=0;$i<$num_row;$i++)
    {
      $result=mysqli_fetch_assoc($sql);
      echo "<table border='0', width='1000', align='center'>
      <tr>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Theme</font></th>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Locus_Id</font></th>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Gene_Symbol</font></th>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Gene_Name</font></th>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Synonyms</font></th>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Chromosome</font></th>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Gene Summary</font></th>
      <th bgcolor = '#2F4F4F' align = center><font color = '#fff'>Homologene_Id</font></th>
      </tr>";

      echo "<tr bgcolor = '#D3D3D3'>";
      echo "<td align=center>";
      echo 'Stress'; 
      echo "</td>";
      $strName2 = $result["Locus_id"];
      $strLink2 = "<a href = 'stress_gene_go.php?gene_id=" . $result['Locus_id'] . "'>" . $strName2 . "</a>";
      echo "<td align=center>" . $strLink2 . "</td>";
      $strName1 = $result["Gene_symbol"];
      $strLink1 = "<a href = 'stress_gene_symbol.php?gene_symbol=" . $result['Gene_symbol'] . "'>" . $strName1 . "</a>";
      echo "<td align=center>" . $strLink1 . "</td>";
      echo "<td align=center>" . $result['Gene_name'] . "</td>";
      echo "<td align=center>" . $result['Synonymns'] . "</td>";
      echo "<td align=center>" . $result['Chromosome_no'] . "</td>";
      echo "<td height='50px'><div style='height:200px;  overflow:scroll;'>" . $result['Gene_summary'] . "</div></td>";
      //$strName = $result['FirstName'] . " " . $result['LastName']
      $strName = $result["Homologene_id"];

      // Create a link to person.php with the id-value in the URL
      // $strLink = "<a href = 'person.php?id = " . $result['id'] . "'>" . $strNavn . "</a>";
      $strLink = "<a href = 'stress_homologene.php?homologene_id=" . $result['Homologene_id'] . "'>" . $strName . "</a>";

      echo "<td align=center>" . $strLink . "</td>";
      // echo "<td align=center>" . $result['PMID'] . "</td>";
      echo "</tr>";

      break;  //This counts the number or results - and if there wasn't any it gives them a little message explaining that    
    }
  }

上面是从表中获取数据的代码。 请 friend 们帮帮我,老大要杀了我...... 提前致谢。

最佳答案

可能有不止一种方法可以做到这一点。你的问题我不太清楚,如果我错了,请纠正我。 如果您想从多个表中选择列,您可以尝试使用 UNION 运算符。在选择框中添加“全部”选项。

<option value='all'>All</option>

首先检查选项值,如果它等于“all”,则只需使用 UNION 运算符来组合来自不同 SQL 查询的结果。

例如我有 2 张 table :

表1

-----------------------
id  |  name  |  age   |
-----------------------
1   |  boo   |  12    |
-----------------------
2   |  boom  |  13    |
-----------------------

表2

-----------------------
id  |  name  |  age   |
-----------------------
1   |  rofl  |  14    |
-----------------------
2   |  lol   |  15    |
-----------------------

现在 SELECT * FROM table1 UNION SELECT * FROM table2 将产生如下结果:

-----------------------
id  |  name  |  age   |
-----------------------
1   |  boo   |  12    |
-----------------------
2   |  boom  |  13    |
-----------------------
1   |  rofl  |  14    |
-----------------------
2   |  lol   |  15    |
-----------------------

基本上,您只需要检查选项值,如果它等于 all,只需使用 UNION 运算符将这些 SQL 查询的所有结果合并起来即可。

欲了解更多信息,请访问 http://www.w3schools.com/sql/sql_union.asp

关于php - 使用 php 选择下拉列表的所有选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23947049/

相关文章:

php - 从mysql数据库一次向多个用户发送gcm

javascript - 带有输入参数的 Javascript/PHP 中的 XMLHTTP 请求

php - 如何使用 SLEEP() 函数在 PHP 中暂停脚本几分之一秒?

javascript - 在html中找到指定字符串后动态插入新行

html - 仅在一个 div 中滚动条

php - 从多个选择列表(html 格式)向 mysql 数据库插入数据

php - 如何根据访问者的 IP 地址显示本地化时间?

php - 如何推送到 php 中的多维数组?

php - 在按钮上单击重复的 HTML 代码

java - 如何将jooq表保存为变量然后引用它