我有一个用户可以创建食谱的页面。我有一个javascript脚本,允许用户继续添加表单输入元素以获取更多成分。假设配方有4种成分,用户可以继续添加输入。然而,这会将输入ID /名称的id更改为ingredient1 / 2/3/4,并且我无法理解如何从表单帖子获取信息,因为元素的数量由用户自行决定。您将如何将结果加载到PHP变量中,然后将它们插入到mysql查询中。
html表单的语法
<div id="ingredient1" class="clonedInput">
<h2 class="first-column">Ingredient</h2>
<span style="float:left; padding-right: 10px;">
<input type="text" name="scroll" value="Add Ingredient" id="ingredient" class="ingredient"/>
</span>
</div>
成分1将改为成分2,目的是添加2种成分。
一个有点混乱的问题,所以任何帮助都会很棒!
JB
答案 0 :(得分:1)
我认为您正在寻找的是在输入元素名称中使用[]
。这会将数据作为数组发布。所以,假设你有这个作为你的表格的成分输入元素(在javascript添加了几个之后):
<input type="text" name="ingredients[]" value="" />
<input type="text" name="ingredients[]" value="" />
<input type="text" name="ingredients[]" value="" />
<input type="text" name="ingredients[]" value="" />
<input type="text" name="ingredients[]" value="" />
当用户POST数据时,您将能够访问$_POST['ingredients']
答案 1 :(得分:0)
我会告诉你逻辑,而不是代码,因为这里只有javascript是不够的。
然后当用户发布其数据时,您会在配方中创建1行,并在关系表中创建尽可能多的行作为他们使用的成分。
稍后选择食谱时,你也可以选择关系表中的所有内容,那里可能有几行......
希望对您有所帮助。无法向您展示任何代码,但如果您了解它的原因,就不难做出。
格言