我正在为打印机公司编写工作表应用程序.
我的表格泛滥成灾.
对于每个输入字段,我必须检查是否设置了$_POST变量,如果是,则回显该值. (如果出现某些错误,例如在验证错误之后,用户不应重新键入整个表单)
我的表格泛滥成灾.
对于每个输入字段,我必须检查是否设置了$_POST变量,如果是,则回显该值. (如果出现某些错误,例如在验证错误之后,用户不应重新键入整个表单)
示例代码:
if(isset($_POST['time'])&&!empty($_POST['time'])){echo $_POST['time'];}
我不得不实施这一百次.
所以我试图弄清楚某种功能,使这简单易读.
像这样的东西:
function if_post_echo($key,$default = "") { if(isset($_POST[$key])&&!empty($_POST[$key])){ echo $_POST[$key]; }else{ echo $default; } }
但这不会奏效.
我试图传递$_POST为$key变量,如下所示:
if_post_echo($_POST['time']) function if_request_echo($key,$default = "") { if(isset($key)&&!empty($key)){ echo $key; }else{ echo $default; } }
我也试过这个:
function if_request_echo($key,$default = null) { return isset($_REQUEST[$key])&&!empty($_REQUEST[$key]) ? $_REQUEST[$key] : $default; }
没有任何合理的结果.
问题:
我如何伪造一个函数来查找必要的$_POST变量并返回它,或者如果它的unset然后返回一个空字符串.
有没有办法为$_GET和$_REQUEST执行此操作? (或者只是复制?)
您的PHP测试功能:
<?PHP function test_req($key,$default = '') { if(isset($_REQUEST[$key]) and !empty($_REQUEST[$key])) { return $_REQUEST[$key]; } else { return $default; } } ?>
然后在您的表单HTML:
<input name="my_field" value="<?PHP echo htmlentities(test_req('my_field')); ?>" />
$_REQUEST
(链接)是一个包含POST($_POST)和GET($_GET)请求参数的PHP super global.
如果您只想捕获POST请求参数,那么它将是:
<?PHP function test_req($key,$default = '') { if(isset($_POST[$key]) and !empty($_POST[$key])) { return $_POST[$key]; } else { return $default; } } ?>
例如.