在php中存储变量中输入的文本值时出错

在php中存储变量中输入的文本值时出错,php,session,variables,Php,Session,Variables,我有两页: send.php confirm.php 在send.php中,我有一个输入文本框,用于输入终端用户输入的数字(例如:12345)(该数字是数据库中的私钥)。接下来,我想将输入的数字(12345)存储在会话中。在第2页中,我想从会话中读取该数字(12345),并使用它从数据库中选择行。但我得到一个错误: 注意:第4行C:\xampp\htdocssend.php中的未定义索引:nid <?php include "db.php"; session_start(); $nid=$

我有两页:

  • send.php
  • confirm.php
  • 在send.php中,我有一个输入文本框,用于输入终端用户输入的数字(例如:12345)(该数字是数据库中的私钥)。接下来,我想将输入的数字(12345)存储在会话中。在第2页中,我想从会话中读取该数字(12345),并使用它从数据库中选择行。但我得到一个错误:

    注意:第4行C:\xampp\htdocssend.php中的未定义索引:nid

    <?php
    include "db.php";
    session_start();
    $nid=$_POST["nid"];
    $_SESSION['user_id']=$nid;
    //$_SESSION['nid']=True;
    if(isset($_POST['nid'])){
    header("Location: confirm2.php");
    
    exit;
    }
    <form action="send.php" method="post">
    
    <div class="top-row">
    <div class="field-wrap">
    <label>
    your id<span class="req">*</span>
    </label>
    <input type="text" required autocomplete="off" name="nid" />
    </div>
    <button type="submit" class="button button-block"/>submit</button>
    </div>
    </form>
    
    移动
    $nid=$\u POST[“nid”];
    $\会话['user\u id']=$nid
    进入
    if(isset($\u POST['nid']){
    block.
    因为您试图在它存在之前使用
    $\u POST[“nid”]
    。只有在表单提交之后,您才能在
    $\u POST[“nid”]
    中获得值。

    同时将
    if(isset($\u POST['nid'])
    更改为
    if(isset($\u POST['nid'])和&$\u POST['nid']!='')

    什么是send.php代码?很抱歉,我看到这是send。但是POST?这是从哪里来的?请在脚本开头使用print\r($\u POST)并检查是否为“nid”是设置在它里面还是not@Andreas我添加了send.php代码的其余部分,很高兴它有所帮助。干杯。。!