我有一个以下的html标记(这是一个让你知道的基本结构,因为有些人会问我标签的位置。考虑它在那里。)
<input type="text" name="set_val_1" id="set_val_1" value="1"/>
<input type="text" name="set_val_2" id="set_val_2" value="2"/>
<input type="text" name="max_risk_id" id="max_risk_id" value="5"/>
<input type="submit" value="Enter" name="submit_button"/>
现在,当提交表单时,我希望有一个代码来检测是否以“set_val_
”格式显示任何POST。我希望我能让你明白我实际要问的是什么。
基于我的问题的算法:
if(isset($_POST['something with the pattern (set_val_)']))
{
$flag = 1;
$val_string = "";
}
if($flag == 1)
{
$max_id = $_POST['max_risk_id'];
for($i = 1; $i<=$max_id; $i++)
{
if(isset($_POST['set_val_'.$i]))
{
$val_string = $val_string. $_POST['set_val_'.$i].",";
}
}
}
如何检查某个帖子是否以特定名称格式发生?
答案 0 :(得分:1)
我根本不明白这个问题,但也许你的意思是这样的?
<?php
// for testing
$post = array (
"abc" => "123",
"set_val_1" => 1,
"set_val_2" => 2
);
$val_string = "";
foreach ($post as $key => $value) {
if (strpos($key, "set_val_") === 0) {
$parts = explode("_", $key);
if (count($parts) != 3) {
continue;
}
if (!is_numeric($parts[2])) {
continue;
}
$val_string .= $value;
}
}
print_r($val_string);
答案 1 :(得分:1)
您好您可以通过
实现这一目标$post_keys = array_keys($_POST);
$matched_keys = preg_grep('/^set_val_/', $keys);
if(count($matched_keys) > 0 ){
$flag = 1;
$val_string = "";
}
虽然我认为方法必须像这样改变:
创建要在服务器端检查的输入元素数组
<input type="text" name="set_val[1]" id="set_val_1" value="1"/>
<input type="text" name="set_val[2] id="set_val_2" value="2"/>
<input type="text" name="max_risk_id" id="max_risk_id" value="5"/>
<input type="submit" value="Enter" name="submit_button"/>
现在在服务器端,您可以将其检查为
if(isset($_POST['set_val'])){
$flag = 1;
$val_string = "";
}
if($flag == 1)
{
$max_id = $_POST['max_risk_id'];
for($i = 1; $i<=$max_id; $i++)
{
if(isset($_POST['set_val'][$i]))
{
$val_string = $val_string. $_POST['set_val'][$i].",";
}
}
}
答案 2 :(得分:0)
$(document).ready(function() {
$('input').focusout(function() {
window.setTimeout(function() {
if ($(':focus').length === 0) {
$("input").prop('disabled', true);
}
}, 5);
});
});
函数会检查您的特定isset()
元素是否已实际收到。格式化使用它。
$_POST
答案 3 :(得分:-1)
使用以下代码,
if (isset($_POST['submit_button'])){
//rest of your code
}
这将显示数据是否发布。