用于加载指定页面的PHP表单

用于加载指定页面的PHP表单,php,mysql,forms,Php,Mysql,Forms,我曾试图找出如何写出来,但由于某种原因,无法开始计算出这需要如何工作 请在下面找到我想要实现的概念 用户输入4位pin(在MySQL上检查)。pin输入并提交后,将根据MySQL重定向到相关URL DB: 请帮助我,因为我完全无法从哪里开始。注意: 为了实现您的目标,我们将使用HTML、PHP和mysqli.* 有名称、PIN和URL列的表的名称是什么 我们可以使用header()将页面重定向到输入PIN的相应URL 只需在下面替换必要的表名、列名、主机名、用户名、密码和数据库名(记住它们区分

我曾试图找出如何写出来,但由于某种原因,无法开始计算出这需要如何工作

请在下面找到我想要实现的概念

用户输入4位pin(在MySQL上检查)。pin输入并提交后,将根据MySQL重定向到相关URL

DB:

请帮助我,因为我完全无法从哪里开始。

注意:
  • 为了实现您的目标,我们将使用
    HTML
    PHP
    mysqli.*
  • 名称
    PIN
    URL
    列的表的名称是什么
  • 我们可以使用
    header()
    将页面重定向到输入PIN的相应URL
  • 只需在下面替换必要的表名、列名、主机名、用户名、密码和数据库名(记住它们区分大小写)
首先,我们创建一个表单:

<html>
<body>
<!-- PHP CODE HERE -->

  <form action="" method="POST">
    <input type="number" name="pin" placeholder="4 DIGIT PIN" min="1000" max="9999" required>
    <input type="submit" name="submit-form">
  </form>
</body>
</html>

然后创建一个接受表单的PHP脚本(您可以将其放在表单上方):



显示您尝试的php代码这是一个糟糕的安全模型,因为在日志中看到url的人可能会访问任何人的页面…您需要重新考虑“php表单加载指定页面”-您的标题与问题不匹配。
<html>
<body>
<!-- PHP CODE HERE -->

  <form action="" method="POST">
    <input type="number" name="pin" placeholder="4 DIGIT PIN" min="1000" max="9999" required>
    <input type="submit" name="submit-form">
  </form>
</body>
</html>
<?php

  if(isset($_POST["submit-form"])){

    /* ESTABLISH CONNECTION FIRST TO YOUR DATABASE */
    $con = new mysqli("YourHost", "YourUsername", "YourPassword", "YourDatabase"); /* REPLACE NECESSSARY DATA */

    /* CHECK THE CONNECTION */
    if (mysqli_connect_errno()) {
      printf("Connect failed: %s\n", mysqli_connect_error());
      exit();
    }

    if($stmt = $con->prepare("SELECT URL FROM table_name WHERE PIN = ?")){ /* CHECK IF THE PREPARED STATEMENT IS TRUE */
      $stmt->bind_param("i",$_POST["pin"]); /* BIND THE PASSED ON ENTERED PIN TO THE QUERY */
      $stmt->execute(); /* EXECUTE THE QUERY */
      $check = $stmt->num_rows; /* STORE THE NUMBER OF RESULTS */
      if($check > 0){ /* CHECK IF THERE IS FOUND */
        $stmt->bind_result($url); /* BIND THE RESULT TO THIS VARIABLE */
        $stmt->fetch(); /* FETCH THE RESULT */
        header("LOCATION:".$url); /* REDIRECT THE PAGE TO THE CORRESPONDING URL */
      }
      else { /* IF NO PIN NUMBER FOUND IN THE DATABASE */
        echo "Invalid PIN Number";
      }
      $stmt->close(); /* CLOSE THE PREPARED STATEMENT */
    } /* END OF PREPARED STATEMENT */

  } /* END OF ISSET */

?>