如何将所选选项传递到另一个页面

时间:2013-05-27 11:37:02

标签: php html

当我使用Select Tag时,没有显示任何内容,因为使用$ _SESSION变量在第二页中看不到。有人帮助我:我很困惑: 我的第一页:

  <?php
    session_start();
    if(isset($_SESSION['a'])){
        echo $_SESSION['a'];
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    </head>

    <body>
    <form id="form1" name="form1" method="post" action="test2.php">
      <label for="df"></label>
      <input type="text" name="df" id="df" />
      <select name="a">
      <option value="12" />12

      <option value="13"/>13

      </select>
      <input type="submit" value="send" />
    </form>
    <?php
    if(isset($_post)){
        if(isset($_POST['a'])){
    $_SESSION['a']= $_POST['a'];
    }
    }
    ?>
    </body>
    </html>

我的第二页:

 <?php
    session_start();
    $r12=13;
    if(isset($_SESSION['a'])){
        echo $r12;
    }

    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled Document</title>
    </head>

    <body>

    aaa
    <?php

    if(isset($_SESSION['a'])){
        echo $_SESSION['a'];
    }
    ?>
    </body>
    </html>

6 个答案:

答案 0 :(得分:1)

<input type="submit" value="send" name="submit"/>

    if(isset($_POST['submit'])){

答案 1 :(得分:0)

isset($_post)中,这应该是isset($_POST)

答案 2 :(得分:0)

您要发布到test2.php,因此只有test2.php才能收到$_POST,而不是第一页!

如果您在 second 页面上致电var_dump($_POST),您应该会看到正在发送的变量。但是,当表单显示在第一个页面上时(即在提交表单之前),$_POST将为空。

答案 3 :(得分:0)

这样做:只需将$ _POST ['a']设置为会话,您也可以在其他页面使用它。

<?php
    session_start();
    if(isset($_POST['submit'])){
        echo $_POST['a'];
        }
    else{
    ?>
<head>
    <title>Untitled Document</title>
</head>
<body>
    <form name="form1" method="post" action="index.php">
    <input type="text" name="df" id="df" />
        <select name="a">
            <option value="12" >12</option>
            <option value="13">13</option>
        </select>
    <input type="submit" value="send" name='submit' />
    </form>
    <?php
    }
    ?>
</body>
</html>

答案 4 :(得分:0)

这是另一种方式,你的第一页应该是这样的......

<?php
session_start();

if(isset($_SESSION['a'])){
   echo $_SESSION['a'];
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
   <title>Untitled Document</title>
 </head>
 <body>
   <form id="form1" name="form1" method="post">
      <label for="df"></label>
        <input type="text" name="df" id="df" />
      <select name="a">
         <option value="12" />12
         <option value="13"/>13
        </select>
      <input type="submit" value="send" name="submit"/>
   </form>
<?php
if(isset($_POST['submit'])){
   if(isset($_POST['a'])){
      $_SESSION['a']= $_POST['a'];
        $url = 'test2.php'; // Define the URL:      
        header("Location: $url");
        exit(); // Quit the script.         
    }
}
?>
 </body>
</html>

答案 5 :(得分:0)

试试这个

if(isset($_POST) && !empty($_POST)){
 echo 'your selected option : '.$_POST['a'];
}