HTML SELECT中的简单PHP无法正常工作

时间:2011-10-21 05:21:30

标签: php html forms select

我正在尝试执行以下代码:

<label for="gender">Gender*: </label>
<select name="user[test]" id="gender">
<? echo "THISISATEST"?>
<option value="-1"> - Select - </option>
</select>

它没有做任何事情。

然而,这很好用:

<select name="user[test]" id="gender">
<option value="-1"> - Select - </option>
</select>
<? echo "THISISATEST"?>

发生了什么事?

谢谢!

编辑:我是一个白痴,我试图简化在这里发布的问题,结果是回声出现在soruce和我试图动态创建的行不正常。 DERP。我忘了用我的速记围绕?else:用括号,这导致整条线不回应。

由于

4 个答案:

答案 0 :(得分:2)

<select name="user[test]" id="gender">
    <? echo "THISISATEST"?> /// You can't echo string inside <select></select>
    <option value="-1"> - Select - </option>
</select>

宁可做

<select name="user[test]" id="gender">
    <option value="0"><? echo "THISISATEST"?></option>  // This will work
    <option value="1"> - Select - </option>
</select>

答案 1 :(得分:2)

<select name="user[test]" id="gender">
<option value="<?php
 echo "THISISATEST";
 ?>"><?php
 echo "THISISATEST";
 ?></option>  // This will work
<option value="1"> - Select - </option>

这应该工作正常。您也可以输入所需的值

答案 2 :(得分:1)

您是否完全确定服务器上启用了短标签?我只需仔细检查<?php echo "THISISATEST"; ?>,看看是否可以改善你的运气。此外,您是否查看了源代码 - 因为在选择此选项时,该值可能已隐藏在呈现的页面上。

答案 3 :(得分:1)

简单。您的浏览器会忽略select节点下的文本节点。这种安排不在HTML规范中,因此浏览器可以随意删除它们。