【问题标题】:Query Select Sql with Condition from a Value of Html combobox从 Html 组合框的值中查询 Select Sql with Condition
【发布时间】:2013-07-15 03:00:40
【问题描述】:

我在使用 php 进行网络编程时遇到问题。我有一个输入表单,其中有两个带有多个选项的组合框。 在表单中,还有一个 Code 的文本字段,其中的值由使用 select 查询从 mySql 数据库的两个组合框(作为条件)中选择的内容确定。

点赞=Select code from tableA where condition1=itemComboA and condition2=itemComboB;

我想问,当用户在两个组合框中选择一个项目时,如何自动检索文本字段的值?

上面的查询仍然不起作用,然后我管理它以在另一个页面中选择 code 然后我通过使用带有 Code 的链接将其重定向到输入表单这个:http://localhost/data/input.php?code=6

我仍然无法在文本字段的值中设置 value='<?php echo $code ?>;',因为选择查询不起作用。

【问题讨论】:

    标签: php html mysql


    【解决方案1】:

    您的 html 将如下所示

           <form action="input.php" action="GET">
                <select name="code">
                    <option value="1"> option 1</option>
                    <option value="2"> option 2</option>
                    <option value="3"> option 3</option>
                </select>
    
                <select name="code2">
                    <option value="drp1"> option 1</option>
                    <option value="dpr2"> option 2</option>
                    <option value="drp3"> option 3</option>
                </select>
    <input type="submit" value="Submit" />
            </form>
    

    出于测试目的,在您的 php 文件中,打印它以显示您的数组的内容

    print_r($_GET);
    

    您可以从那里获取要放入 mysql 查询的值

    $query = 'SELECT code FROM tableA WHERE condition1 = ' . mysql_real_escape_string($_GET['code1']) . ' AND condition2 = ' mysql_real_escape_string($_GET['code2']) . ';';
    

    【讨论】:

    • 如果我将包含查询的php代码与html表单放在同一个文件中怎么办?我需要将 print_r($_GET) 放在文本字段值中吗?
    • 您在 html 文件中创建了一个带有提交按钮的表单。当您单击“提交”时,您的表单将发布到您的 php 页面 (input.php)。从那里您使用 $_GET['code'] 和 $_GET['code2'] 将值放入您的 MYSQL 查询
    • 哈哈,他们得到了答案并跑了!
    • @user2035819 我知道了,不过还是试着分析一下,应用到我的代码上 反正我正在考虑用Ajax来解决 谢谢大家
    【解决方案2】:

    在你的 php 文件的顶部你可以有:

    <?php
    
        if(!empty($_POST) {
            $query = 'SELECT code FROM tableA WHERE condition1 = ' . mysql_real_escape_string($_POST['itemComboA']) . ' AND condition2 = ' mysql_real_escape_string($_POST['itemComboB']) . ';';
        }
    
    ?>
    

    您的表单似乎没有定义method="post",因此您可能需要使用$_GET 而不是$_POST

    【讨论】:

      猜你喜欢
      • 2023-03-16
      • 1970-01-01
      • 2012-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多