如果我使用isset()
作为文本输入,那么我就这样写:
$newpass = (isset($_POST['newpass'])) ? $_POST['newpass'] : '';
现在,如果我有一个如下所示的下拉菜单:
<select name="students">
<option value="">Please Select</option>
<option value="john">John Doe</option>
<option value="Mike">Mike Smith</option>
</select>
然后我可以使用与用于文本输入相同类型的isset:
$studentsdrop = (isset($_POST['students'])) ? $_POST['students'] : '';
或下拉菜单中的isset是不同的?
答案 0 :(得分:1)
这一行:
$newpass = (isset($_POST['newpass'])) ? $_POST['newpass'] : '';
检查名为newpass
的变量是否已发布到脚本中。
选项选择值可以通过javascript / jQuery获得并发布到php脚本(服务器端),以便通过AJAX或GET / POST进行操作。这是一个例子:
<html>
<head>
<!--<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>-->
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#mySelect').change(function() {
var sel = $(this).val();
//alert(sel);
$.ajax({
type: "POST",
url: "another_php_file.php",
data: 'theOption=' + sel,
success: function(data) {
}
});
});
});
</script>
</head>
<body>
<select name="students" id="mySelect">
<option value="">Please Select</option>
<option value="john">John Doe</option>
<option value="Mike">Mike Smith</option>
</select>
档案:ANOTHER_PHP_FILE.php
$theVar = $_POST['theOption'];
echo 'I received [' . $theVar . ']';
答案 1 :(得分:-1)
您根本不需要使用isset
。在任何一种情况下
答案 2 :(得分:-1)
isset()检查变量是否存在并且未设置为NULL。它根本与HTML无关。
在你的情况下:
$studentsdrop = (isset($_POST['students'])) ? $_POST['students'] : '';
只要您知道students
将会出现,您就不需要这样了。
最常见的时间isset()用于表单提交,正在确定一个复选框。例如,如果您提交的表单中包含复选框,并且未选中该复选框,则不会将其传递到$_POST
变量中。这一点至关重要:
$checkbox_name = isset($_POST['checkbox_name']) ? $_POST['checkbox_name'] : '';
对于select
,$_POST
变量将始终返回,即使它是空的。