从多个输入一次在数据库中插入多个文件

时间:2019-05-11 12:29:04

标签: php mysqli

将数据存储到数组中之后,然后将数据插入数据库中。成功运行后,数据仍不会出现在数据库中。

Upload.php

<?php
require  "dbh.inc.php";
$image = $_FILES['image']['name'];
$image_tmp = $_FILES['image']['tmp_name'];
    // $ake = array();
if (isset($_FILES['image'])) {

    for($i=0;$i<9;$i++){
    $target = "../images/".basename($image[$i]);

    if (move_uploaded_file( $image_tmp[$i], $target)) {

         $msg ="<br>Image Uploaded successfully<br>";
         echo $image[$i];
         echo $msg;

        }else {
            $msg= "<br>There was a problem Uploading image<br>";
            echo $msg;
            $bolen =false;
         }
    }
        if ($bolen) {

        $sql= "INSERT INTO documents1 (exam_result,reg_slip,status_letter,attendance,photograph,matric,offer_letter,payment) 
        VALUES ('$image[0]','$image[1]','$image[2]','$image[3]','$image[4]','$image[5]','$image[6]','$image[7]','$image[8]');";
        mysqli_query($conn,$sql);
    }

} else{

    echo "You did not sumbit";
}

sql doucments1表

--
-- Table structure for table `documents1`
--

CREATE TABLE `documents1` (
  `passport` tinytext,
  `exam_result` tinytext,
  `reg_slip` tinytext,
  `status_letter` tinytext,
  `attendance` tinytext,
  `photograph` tinytext,
  `matric` tinytext,
  `offer_letter` tinytext,
  `payment` tinytext
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
COMMIT;


没有任何列,也没有出现错误。

1 个答案:

答案 0 :(得分:2)

您有9个值来写入数据库表,但是只有指定的8列应插入数据。您的数据库服务器只是不知道该怎么做。

最重要的是,如果未设置任何错误处理,您将无法从数据库服务器看到任何错误。

Some good reading about mysqli error handling