0

当我做类似的事情时:

foreach($_POST as $post_key => $post_value){     
    /* Any code here*/  
}

所以,像:

$varSomething = $_POST['anything'];
$varSomethingElse = $_POST['somethingElse'];

可能吗?当我捕获 $_POST[' '] 时,该变量不是已经消耗了吗?

我这样做的主要原因是因为在提交表单后,我想检查某些类型的某些项目是否获得了特定

还有更合适的吗?

4

2 回答 2

1

首先,html代码不使用变量类型,例如,如果你有

<input id="check" type="checkbox" />

如果没有确定的值,那么在您拥有 之后echo $_POST['chek'],您可能会认为结果将是一个布尔值(false 或 true),但正确的结果将是“on”或“off”,您可以对这种情况进行编码。另外,如果您想知道数据的类型,可以在服务器端使用正则表达式,例如:

<input type="text" id="number" value="1350" />

......

PHP 代码

$data = $_POST['number'];
$regularExpression = "/^\d{1,10}$/";

if (preg_match($regularExpression, $data)) {
echo "Is numeric";
}

好幸运。

于 2013-10-24T23:24:32.633 回答
0

如果您不知道发送数据的元素的名称是什么。第一种方法是好的。但如果知道密码或用户名等名称,您可以在 html 中使用第二个

<input type="password" name ="password" />

在php中

$pass_recvd=$_POST['密码'];

没有办法检查类型,即文本/密码/复选框/选择等。你必须在客户端做最好的方法是使用 Jquery

如果您想检查是否设置了变量,请使用 isset 方法进行简单检查

if(isset($_POST['someVariableName'])) {}否则{}

于 2013-10-24T00:29:33.767 回答