我有一些动态输入应该插入到数组值中,然后传递给我的PHP forloop,这样我就可以插入到我的MYSQL DB中。
我遇到的问题是我的阵列是空的。 起初,我收到一个错误,说无效对象传递给数组。我添加了
if (is_array($faqQuestions) || is_object($faqQuestions)) {
}
围绕我的foreach循环找出没有得到正确的值。
所以我知道我的问题必须以我的形式出现。
所以第一个可见输入如下......
<div id="dynamicInput">
<input name="faqQuestions[]" type="name" class="form-control seller input" placeholder="Question" value="<?php echo $question ?>">
<textarea class="about-textarea" name="faqAnswers[]" rows="3" placeholder="Answer"><?php echo $answer; ?></textarea>
</div>
<input class="add-another-button" type="button" value="Add Another +" onClick="addInput('dynamicInput');">
因此两个输入名称是faqQuestions []和faqAnswers []。 如果用户单击添加另一个,则相同的表单输入应显示为与数组相同的名称。
var counter = 1;
var limit = 5;
function addInput(divName){
if (counter == limit) {
alert("You have reached the limit of adding " + counter + " inputs");
}
else {
var newdiv = document.createElement('div');
newdiv.innerHTML = "Faq " + (counter + 1) + " <br><input name='faqQuestions[]' type=\"name\" class=\"form-control seller-input\" placeholder=\"Question\"\n" +
" value=\"<?php echo $question ?>\">\n" +
" <textarea class=\"about-textarea\" name='faqAnswers[]' rows=\"3\"\n" +
" placeholder=\"Answer\"><?php echo $answer; ?></textarea>";
document.getElementById(divName).appendChild(newdiv);
counter++;
}
}
正在捕获数组的PHP
$faqQuestions = $_POST["faqQuestions"];
if (is_array($faqQuestions) || is_object($faqQuestions)) {
foreach ($faqQuestions as $question) {
//I have tried assigning each variable like $q1 = $question[0]
}
}
我一直试图找出为什么我的数组是空的但我只是没有看到它。 希望有人可以提供帮助!感谢