我一直在尝试将一个问题数组放入mysql表中,问题1,问题2,问题3每个问题最多20列,但此查询无法正常工作:
第一个查询获得成功,但第二个查询无法正常工作,请按:
$form_name = $_POST['form_name'];
$form_questions_no = $_POST['form_questions_no'];
$query_1 = mysqli_query($mysqli,"INSERT INTO forms (form_name,form_questions_no)
VALUES ('$form_name','$form_questions_no');") or die(mysqli_connect_error());
if ($query_1) {
echo "Form Name & Form Questions No Done.!</br></br>";
}
$questions = $_POST['questions'];
for($i=0;$i<count($questions);$i++)
{
$query_text = "INSERT INTO forms (question$i)
VALUES ('$questions[$i]') WHERE form_name='$form_name'";
$query_2 = mysqli_query($mysqli,"$query_text;") or die(mysqli_connect_error());
if ($query_2) {
echo "Question $i Done!";
}
}
所以如果你们有人可以指导我的话......我会感激的......!我是PHP的初学者,这就是为什么......!
答案 0 :(得分:2)
你想要arrays!将输入字段命名为:
<input name="questions[]" ...>
然后您将在PHP中获取一个数组:
$questions = $_POST['questions'];
你可以遍历它:
foreach ($questions as $question) {
echo $question;
}
有几十个名为$question_no_*
的个体变量是纯粹的疯狂。
答案 1 :(得分:0)
使用forloop
for($i=0;$i<count($questions);$i++)
{
echo $questions[$i]; //write your sql query here
}
从单列
获取数据$query="select question from table";
$result=mysqli_query($connection,$query);
while($row=mysqli_fetch_assoc($result))
{
echo $row['question'];
}
如果您想将其作为question_no_1,question_no_2等..,请使用以下代码
extract($_POST); //will give you $_POST['question_no..'] as $question_no_..
$fields_number = 5;
for ($x=0;$x < $fields_number;$x++) {
if (isset(${'question_no_'.$x++})) {
$question_no_$x++ = ${'question_no_'.$x++};
} else {
${'question_no_'.$x++}++ = "";
}
${'question_no_'.$x++} //this will give you $question_no_1, $question_no_2 etc..
Check here用于加入两个变量
}
答案 2 :(得分:0)
试试这个:
<?php
$fields_number = 5;
for ($x=0;$x < $fields_number;$x++){
if (isset($_POST["question_no_$x"]))
{
$question_no[$x] = $_POST["question_no_$x"];
} else {
$question_no[$x] = "";
}
}
print_r($question_no);
?>