如何在提交用户输入后在if语句中提交用户输入

时间:2016-11-13 22:31:33

标签: php mysql forms

我刚刚为此做了一个帐户。所以我的任务是设置一个菜单,可以用MYSQL数据库(northwind)做某些事情。

我仍然相当熟悉PHP,不过,我不得不说我很失望,因为我无法超越项目中最简单的部分。

项目只是询问"您的程序应该只使用纯文本进行交互。要使编译和分级更容易,请不要包含图形或任何其他花哨的界面 您的顶级菜单(以及要求您实施的任务)包括以下内容:

  1. 添加客户
  2. 添加订单
  3. 删除订单
  4. 发货订单
  5. 使用客户信息打印待处理订单
  6. 补货零件
  7. 出口
  8. 现在我应该绕过这个菜单并选择一个选项。一旦我选择了一个选项,我就必须执行一个SQL查询(我还没有达到这个问题,并且它不是问题的一部分)。查询完成后,它将再次循环到菜单。

    到目前为止我已经做到了这一点。它有点脏,但我只是想完成这项工作,所以我可以稍后改进。这是我的代码:

    <?php
    include "database-include.php";
    
    $connection = mysqli_connect(DBHOST,DBUSER,DBPASS,DBNAME);
    
    $error = mysqli_connect_error();
    if($error != null){
         $output = "<p>Unable to connect to database<p>".$error;
         exit($output);    
    }
    
    echo "1. add a customer <br/>     
          2. add an order <br/>
          3. remove an order <br/> 
          4. ship an or0der <br/>
          5. print pending orders with customer information <br/>
          6. restock parts <br/>
          7. exit <br/>";
    
    echo "<form action = 'Northwind_Database_Shahbaaz_Singh.php' method='get'>"; 
    echo "<input type = 'text' value ='' name ='choice'/>";
    echo "</form>"; 
    if (isset($_GET['choice'])){
        $choice = $_GET['choice'];
    
        echo "<br/>";    
        if ($choice == 1){
            echo "<form action = 'Northwind_Database_Shahbaaz_Singh.php' method='get'>";
            echo "<input type = 'text' value ='Customer Name' name ='customer_name'/>"; 
            echo "<input type='submit' value='Submit'>";
            if (isset($_GET['customer_name'])){
                echo "success";
            }
            echo "</form>";      
        } else if ($choice == 2){
            echo "2";
        } else if($choice == 3){
            echo "3";
        } else if($choice == 4){
            echo "4";  
        } else if($choice == 5){
          = echo "5";
        } else if($choice == 6){
            echo "5";
        } else if($choice == 7){
            exit("Goodbye!");
        }
    }
    ?>
    

    我遇到的问题是,在选择一个选项并输入输入后,表单会提交客户价值,而不是选择价值。接口工作的唯一方法是我再次手动输入选项和客户价值。无论如何我可以在POST / GET知道选择相同的情况下获得客户价值吗?

    这在Java中要容易做到100倍,但我选择在PHP中为phpmyadmin支持做。 PHP似乎没有相当于Java的in.nextLine。

    任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

所以你有很多问题,例如尝试使用PHP作为Java而不是使用静态HTML ......但你确实说过你是新的,所以我只是明白了。< / p>

当你选择&#34; 1&#34;作为文本输入中的一个选项(可以轻松更改单选按钮或<select>标记),您将创建2个单独的表单,将choice完全排除在环境之外并仅发送{{1到服务器。这样做:

customer-name

这样,您只需在现有表单中添加内容,只保留一个表单并始终发送所有可用数据。