来自Mysql html的PHP帖子选择下拉框

时间:2015-06-30 17:19:08

标签: php html mysql

我正在使用html,PHP和MySQL来创建一个有下拉列表的网页。下拉列表的内容将从MySQL数据库表中提取。我能够填充下拉列表,并且我能够获得使用PHP创建的搜索按钮。我的问题是从下拉列表中选择一个条目后如何获取该按钮以获取该信息,以便我可以用它做其他事情。在这种情况下,我想做两件事。

  1. 显示下拉列表中选择的条目及其在SQL表中的相关信息。
  2. 有第二个按钮,然后根据从SQL收集的信息将您发送到链接。
  3. 实质上,您从下拉列表中选择一个800号码。它显示800号码和与800号码相关联的名称,然后当您点击"去"按钮它会将您发送到他们的网站。

    SQL DB中存在所有800个数字名称关联,因为它是动态更改的。

    这是我到目前为止所拥有的:

    <html>
    <head>
    <title>PHP Test</title>
    </head>
    <body>
      <?php echo '<p>Hello World</p>'; ?>
      <?php
        mysql_connect("localhost", "root", "root") or die("Connection Failed");
        mysql_select_db("voice")or die("Connection Failed");
        $query = "SELECT * FROM 800db";
        $result = mysql_query($query);
      ?>
      <form mthod="post">
        <select id="8xx" name="dropdown1">
          <?php
            while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
          ?>
          <option value="<?php echo $line['8xxNumber'];?>">
           <?php echo $line['8xxNumber']; ?>
          </option>
          <?php } ?>
        </select>
      </form>
    
      <?php
        $selected_8xx = $_POST['8xx'];
        echo
          "<form action='' method='post'>
            <input type='submit' name='use_button' value='search' />
           </form>";
    
        if(isset($_POST['use_button'])) {
          echo "it should say $selected_8xx";
        }
      ?>
    </body>
    </html>
    

    我没有得到预期的结果。实际上,当我单击按钮时,它会将下拉列表恢复为默认值并且不返回任何内容。你可以做任何事情来帮助我们。

1 个答案:

答案 0 :(得分:1)

您正在创建两个表单。带submit按钮的那个 (除按钮本身外。)

删除您的第一个表单的结束标记和第二个表单的开始标记,以便selectinput可以使用相同的格式。

除此之外,这里还有许多其他问题,包括但不一定限于......

  • 错别字,例如mthod代替method标记中的form
  • 当元素的名称为$_POST['8xx']时,您正在寻找dropdown1,您应该寻找$_POST['dropdown1']
  • 将显示表单的代码与处理表单的代码混合在一起,无疑会引起关于页面加载和服务器端与客户端代码混合的排序的混淆。