没有viewstate的Asp.net dropdownlist选择值PHP如何实现这一点

时间:2012-01-03 06:32:11

标签: php asp.net drop-down-menu viewstate

这只是一个从我脑海中突然出现的问题,

PHP没有viewstate ,但如果下拉列表绑定到下面的数据源,这些人如何在country id期间保存postback/POST

CountryId CountryName
1             USA
2             INDIA
3            ....

假设显示的文字是CountryName。

在回发期间的ASP.NET中,在数据绑定期间,当数据源保存到viewstate中时,将从viewstate加载下拉列表选定值。

  • PHP如何实际达到此效果

  • 如果在post(验证等)期间发生错误,asp.net会再次从viewstate加载下拉值,那么PHP人员是否会再次请求数据库或从缓存加载。

注意:这只是一个可以给出可预测答案的简单示例,我正在寻找更广泛的思考答案,考虑dropdownlist可以容纳的其他事情。

1 个答案:

答案 0 :(得分:1)

在PHP中,任何/所有可变表单元素的当前值将被POST回服务器,并将显示在$_POST全局中。

更新:一个例子:

<input type="text" name="my_text" value="some_value" ?>
<select name="my_select">
    <option value="option1"/>Option 1</option>
    <option value="option2" SELECTED/>Option 2</option>
</select>

在这种情况下,服务器将收到:

$_POST['my_text'] = 'some_value';
$_POST['my_select'] = 'option2';

根据验证:除非您使用引入验证的框架,否则PHP不知道其中的区别。如果您想确保您的选择值确实是有效值,您需要手动地对已知值列表进行双重检查。

再一次 - 有一些框架可以为其他事情的验证提供大量帮助。虽然底层概念是相同的:生成一个列表,从中创建一个选择,再次生成列表并确保POST的值确实在列表中。