为了账号安全,请及时绑定邮箱和手机立即绑定

如何在输入字段中的数组中给出动态名称?

如何在输入字段中的数组中给出动态名称?

PHP
慕哥6287543 2021-12-03 14:37:04
我有一个具有动态值的表单,它将检查该属性 ID,然后将其保存到数据库中。例如,在我的数据库中有一个表,其标题为 id=1,类型为 id=2,描述为 id=3,提交表单后,它将检查该字段是否为标题或类型或描述以及它会将其保存在数据库中,即如果它是标题,它将保存属性 ID 值为 1 的字段标题的值。     <form method="post" action="something.php">     <input type="text" name="field[][title]" value="edison">     <input type="text" name="field[][type]" value="book">     <input type="text" name="field[][description]" value="some description">     </form>它没有使用foreach在php中输入普通数组,我不明白如何获取数组索引内的值以检查sql数据库,即检查字段[][title]”是否有id 1,如果字段是 field[][description]",它将检查 sql 中描述的属性 id 是 3
查看完整描述

2 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

你需要反过来看。


您首先需要查询您的数据库,以便您拥有哪个字段与哪个 ID 相关联的映射。


然后,当您的信息发布时,您可以迭代该映射,检测它们是否已发布,并相应地使用它们:


$mapping = loadFieldNamesToFieldId();


/*

  mapping should look something like: 


  $mapping = [

      'title' => 1,

      'type' => 2

  ];

*/


foreach ($_POST as $field_name => $field_value) { 

  if (isset($mapping[$field_name]]) { 

    $id = $mapping[$field_name];


    // at this point you know that the user submitted a field which

    // had $field_value, and which ID it relates to in your database

  }

}

此时,您可以将表单格式化为:


<input type="text" name="title" value="edison">


查看完整回答
反对 回复 2021-12-03
?
胡子哥哥

TA贡献1825条经验 获得超6个赞

我找到了这个答案并考虑发布这个,因为这与答案有关


foreach ($_POST as $param_name => $param_val) 

{

echo "Param: $param_name; Value: $param_val<br />\n";

}


查看完整回答
反对 回复 2021-12-03
  • 2 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号