通过使用php从url获取值

时间:2016-09-01 06:59:20

标签: php url parameters

我展示了一系列问题。

在选择其中一个问题时,我要求将答案张贴在同一页面上,但问题是我没有从url获取id参数,我正在传递选择问题。

现在当我试图回答所选的问题时,我将需要问题的ID来发布我已经在url中作为参数的问题的答案:id = 1。

以下是html页面的正文部分:

     <?php
 include("menu/menu.php");
 $sqli = "SELECT * FROM forum_question where id='$id'";
 $result=mysqli_query($conn,$sqli);
    ?>

  <form action="submit_answer.php" method="post" name="answers">
     <br> <br> <br>


      <?php 
  while($row = mysqli_fetch_array($result))
    echo "Q".$row['detail'];
  ?>

  <br>
  answers:<br>
     <textarea class="tinymce" name="answers"></textarea>
     <input type="hidden" name="id" value="<?php echo $id;?>">
  <br> <br>
  <input type="submit" value="submit" name="submit">

提交页面&#34; submit_answer.php&#34;,代码为:

<?php 
include'config.php';

if($conn){
 if ($_SERVER["REQUEST_METHOD"] == "POST") {

    $answers = $_REQUEST['answers'];

  $id= $_GET ['id'];
  }

   $sqli= "INSERT INTO answers (answers)
 VALUES ('$answers')";
if (mysqli_query( $conn,$sqli))
 {
     echo "New record created successfully";
   header("location:answer.php?id='$id'");

 } else {
  echo "Error: " . $sqli . "<br>" . $conn->error;
    }
}else{              

}

 mysqli_close($conn);


?>

基本上我对Php非常新鲜,我只想知道如何获得问题的ID并将其提交给&#34; submit_answer.php&#34;答案内容。

2 个答案:

答案 0 :(得分:1)

只需在answer字段下方隐藏字段,并在页面加载时获取该隐藏字段的url参数,如用户buivankim2020所述并提交submit_answer.php,

提交后

在变量中获取该字段的值,就像你为获得答案所做的那样..

答案 1 :(得分:0)

你应该改变它(在标记html中添加id的隐藏输入)

<?php 
include'config.php';
//session_start();
$id= $_GET ['id'];

?>

<html>
<head>
    <link rel="stylesheet" type="text/css" href="css/style.css">
    <script type="text/javascript" src="tinymce/js/jquery.min.js"></script>
        <script type="text/javascript" src="tinymce/plugin/tinymce/tinymce.min.js"></script>
        <script type="text/javascript" src="tinymce/plugin/tinymce/init-tinymce.js"></script>
</head>
  <body>
    <div id="container">
      <div id="main">


      <?php
      include("menu/menu.php");
      $sqli = "SELECT * FROM forum_question where id='$id'";
      $result=mysqli_query($conn,$sqli);
      ?>

    <form action="submit_answer.php" method="post" name="answers">
      <br> <br> <br>
      <?php 
      while($row = mysqli_fetch_array($result))
         echo "Q".$row['detail'];
      ?>

      <br>answers:<br>
      <textarea class="tinymce" name="answers"></textarea>
      <input type="hidden" name="id" value="<?php echo $id;?>">
      <br> <br>
      <input type="submit" value="submit" name="submit">
    </form>
  </body>
</html>

submit_answer.php

<?php 
include'config.php';

if($conn){
  if (isset($_POST['answers']) && isset($_POST['id'])) {
    $answers = $_POST['answers'];
    $id= $_POST['id'];

    $sqli= "INSERT INTO answers (answers) VALUES ('$answers')";
    if (mysqli_query( $conn,$sqli))
    {
      echo "New record created successfully";
      header("location:answer.php?id='$id'");

    } else {
      echo "Error: " . $sqli . "<br>" . $conn->error;
    }
  }
  mysqli_close($conn);
}
?>