在html选择标记

时间:2015-10-13 22:34:09

标签: php html

我正在尝试访问html select标记内的php会话变量,因此我可以使用它来确定如何填充选项。

如果我在select标签之外回显变量,它可以正常工作,但它不会在标签内回显。

我没有经验知道原因。

以下是代码片段,我删除了不相关的代码,以便于阅读。

<?php
session_start();

$_SESSION['profile_type']='test';

?>

<!doctype html>
<html lang="en">

<head>
     <title>Profile</title>
</head> 

<?php
  echo $_SESSION["profile_type"];  //This WILL echo.

?>

<select id="profile" name="profile">

<?php

    echo $_SESSION["profile_type"];  //This will NOT echo.

?>

</select>    

2 个答案:

答案 0 :(得分:2)

正如Andrew已经说过的那样,<select> - 标签内的任何内容都必须是<option>类型。所以,为了列出你正在寻找的会话变量,你需要这样的东西

<select id="profile" name="profile">
    <option value="test">Text here</option>
    <?php
    echo "<option value=".$_SESSION['profile_type'].">".$_SESSION['profile_type']."</option>";
    ?>
</select> 

请注意,$_SESSION$_GET$_POST等超全局变量不能在字符串中指定,并且必须按上述方式连接。

答案 1 :(得分:1)

它可能会回声,但除非您查看来源,否则您无法看到它。在<select>字段中,您需要有<option value='foo'>Foo Text</option>行。 Option标签用于填充选择框。选择框是在提交时使用选项值发送的内容。