Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 只能在数据库中插入第一个值和第二个值,其他值不能插入。如何解决这个问题?_Php_Mysql - Fatal编程技术网

Php 只能在数据库中插入第一个值和第二个值,其他值不能插入。如何解决这个问题?

Php 只能在数据库中插入第一个值和第二个值,其他值不能插入。如何解决这个问题?,php,mysql,Php,Mysql,**为什么此代码只能将第一天&状态和第二天&状态插入数据库?for循环计数[i]无法计算其他值。如何解决这个问题** 下面给出了正确的方法:- <?php require_once "config.php"; if(isset($_POST['save'])){ $values = array(); for($i=0 ; $i <count($_POST['working']); $i++) { $values[] = '("' . $_POST[

**为什么此代码只能将第一天&状态和第二天&状态插入数据库?for循环计数[i]无法计算其他值。如何解决这个问题**

下面给出了正确的方法:-

  <?php
   require_once "config.php";
   if(isset($_POST['save'])){
   $values = array();
   for($i=0 ; $i <count($_POST['working']); $i++) {
    $values[] = '("' . $_POST['working']['day'][$i] . '","' . 
    $_POST['working']['status'][$i] . '")'; }
    $sql4 = "INSERT INTO working_day(day,status) VALUES " . implode(',', 
    $values);
    $result4=mysqli_query($connection,$sql4);}
   ?>
<form id="sendform" method="post" action="">

<input type="text" value="Monday" id="day" name="working[day][]" readonly />
<input type="text" value="" id="status" name="working[status][]" />


<input type="text" value="Tuesday" id="day" name="working[day][]" readonly />
<input type="text" value="" id="status" name="working[status][]" />

<input type="text" value="w" id="day" name="working[day][]" readonly />
<input type="text" value="" id="status" name="working[status][]"  />

<input type="text" value="T" id="day" name="working[day][]" readonly />
<input type="text" value="" id="status" name="working[status][]"  />

<input type="text" value="F" id="day" name="working[day][]" readonly />
<input type="text" value="" id="status" name="working[status][]" />

<input type="text" value="S" id="day" name="working[day][]" readonly />
<input type="text" value="" id="status" name="working[status][]"  />

<input type="text" value="S" id="day" name="working[day][]" readonly />
<input type="text" value="" id="status" name="working[status][]" />

<input type="submit" value="Send" name="save" />
</form>

错误报告告诉您什么?传入的值是什么?执行的查询是什么?很难说。您还可以接受SQL注入。使用准备好的语句并参数化查询。无任何错误消息。当我提交表单时,只能将数组[0]和数组[1]的值插入数据库,其他人无法使用
mysqli
错误报告功能。听起来你没有进入正确的级别。我会做
day[]
status[]
而不是多级数组。而不仅仅是执行查询。当它生成时输出它,看看哪里出了问题。不正确的查询没有执行点。注释掉执行。如果插入两个以上的不同值也像这样?取决于情况。我不太清楚你的情况。请解释更多或给我看代码。像这样的$values[]='(“.$\u POST['working']['day'][$i].”、“.$\u POST['working']['start\u time'][$i].”、“.$\u POST['working']['end\u time'][$i].”、“.$\u POST['working']['status'[$i].”;
<?php
require_once "config.php";
if(isset($_POST['save'])){
    $values = array();
    for($i=0 ; $i <count($_POST['working']['day']); $i++) {
        $values[] = '("' . $_POST['working']['day'][$i] . '","' . $_POST['working']['status'][$i] . '")'; 
    }
    $sql4 = "INSERT INTO working_day(day,status) VALUES " . implode(',', $values);
    $result4=mysqli_query($connection,$sql4);
}