Скрипт php не загружает файлы

У меня был рабочий скрипт с формой PHP, который загружал файлы по временному пути, но теперь он не работает? не знаю, что я изменил?

Все остальное работает, FPDF создает PDF-файл и создает папку, но не загружает 3 документа в эту папку. он работал, и я отредактировал текст и добавил несколько элементов, но теперь файлы не отображаются. И я не могу отменить свой код. Ив просмотрел код, но не нашел ничего неправильного, вызывающего это. Наверное, что-то маленькое, чего я не вижу.

Ниже приведен код страницы отправки:

<link rel = "shortcut icon" href = "img/icon.ico" type = "image/x-icon"/>
<?php
    include("php/dbconnect.php");
    $name=$_POST['name'];
    $email=$_POST['email'];
    $fax=$_POST['fax'];
    $privateaddress=$_POST['privateaddress'];
    $companyaddress=$_POST['companyaddress'];
    $econtactprivate=$_POST['contactprivate'];
    $contactcompany=$_POST['contactcompany'];
    $company=$_POST['company'];
    $wdd=$_POST['wdnd'];
    $seo=$_POST['seo'];
    $swd=$_POST['swd'];
    $fwd=$_POST['fwd'];
    $whs=$_POST['whs'];
    $ed=$_POST['ed'];
    $opi=$_POST['opi'];
    $dba=$_POST['dba'];
    $nd=$_POST['nd'];
    $cms=$_POST['cms'];
    $smo=$_POST['smo'];
    $dwd=$_POST['dwd'];
    $dr=$_POST['dr'];
    $wm=$_POST['wm'];
    $wta=$_POST['wta'];
    $ld=$_POST['ld'];
    $osc=$_POST['osc'];
    $other=$_POST['other'];
    $query=$_POST['query'];
    $pd=date('Y-m-d');
    $question1=$_POST['Q1'];
    $question2=$_POST['Q2'];
    $question3=$_POST['Q3'];
?>
<!DOCTYPE html>
<html xmlns = "http://www.w3.org/1999/xhtml">
<head>
<meta charset = "utf-8" />
<meta name = "viewport" content = "width=device-width, initial-scale=1.0" />
<title>iBroker System</title>

<!-- BOOTSTRAP STYLES-->
<link href = "css/bootstrap.css" rel = "stylesheet" />
<!-- FONTAWESOME STYLES-->
<link href = "css/font-awesome.css" rel = "stylesheet" />
   <!--CUSTOM BASIC STYLES-->
<link href = "css/basic.css" rel = "stylesheet" />
<!--CUSTOM MAIN STYLES-->
<link href = "css/custom.css" rel = "stylesheet" />
<!-- GOOGLE FONTS-->
<link href='http://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css' />

<link href = "css/ui.css" rel = "stylesheet" />
<link href = "css/datepicker.css" rel = "stylesheet" /> 

<script src = "js/jquery-1.10.2.js"></script>

<script type='text/javascript' src='js/jquery/jquery-ui-1.10.1.custom.min.js'></script>


</head>
<?php
include("php/header.php");
?>
    <div id = "page-wrapper">
        <div id = "page-inner">
            <div class = "row">
                <div class = "col-md-12">
                    <h1 class = "page-head-line">Submit Claim</h1>
                    <h1 class = "page-subhead-line">Please Enter Your Claim Information Below</h1>

                </div>
            </div>
            <script type = "text/javascript" src = "js/validation/jquery.validate.min.js"></script>
            <div class = "row">

                <div class = "col-sm-10 col-sm-offset-1">
           <div class = "panel panel-primary">
                    <div class = "panel-heading">
                    </div>
                    <form action = "../submitclaim.php" method = "post" id = "signupForm1" class = "form-horizontal">
                    <div class = "panel-body">
                    <fieldset class = "scheduler-border" >
                     <legend  class = "scheduler-border">Claim Information: 
                     </legend>
                     <div class = "form-group">
                            <label class = "col-sm-2 control-label" 
                            for = "Old">Name of The insured: 
                            </label>
                            <div class = "col-sm-10">
                                <input type = "text" class = "form-control" id = "name" name = "name"/>
                            </div>
                        </div>
                        <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Email: </label>
                            <div class = "col-sm-10">

                                <input type = "text" class = "form-control" id = "email" name = "email"/>
                            </div>
                            </div>

                                <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Contact Number: </label>
                            <div class = "col-sm-10">
                                <input type = "text" class = "form-control" id = "contactprivate" name = "contactprivate"/>
                            </div>
                        </div>

                                <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Date Last Paid:: </label>
                            <div class = "col-sm-10">
                                <input type = "text" class = "form-control" id = "fax" name = "fax"/>
                            </div>
                        </div>

                            <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Date Of Loss: </label>
                            <div class = "col-sm-10">
                                <input type = "text" class = "form-control" id = "privateaddress" name = "privateaddress"  />
                            </div>
                        </div>


                            <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Time Of Loss: </label>
                            <div class = "col-sm-10">
                                <input type = "text" class = "form-control" id = "companyaddress" name = "companyaddress"  />
                            </div>
                        </div>

                            <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Name of Insurer </label>
                            <div class = "col-sm-10">
                                <select  class = "form-control" id = "contactcompany" name = "contactcompany" >
                                <option value = "" >Select Insurer</option>
                                <?php
                                $sql = "select * from branch where delete_status='0' order by branch.branch asc";
                                $q = $conn->query($sql);

                                while($r = $q->fetch_assoc())
                                {
                                echo '<option value = "'.$r['branch'].'"  '.(($branch==$r['id'])?'selected = "selected"':'').'>'.$r['branch'].'</option>';
                                }
                                ?>                                  

                                </select>
                            </div>
                        </div>

                            <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Claim Submission Type: </label>
                            <div class = "col-sm-10">

                                <select name = "wdnd">
                                <option value = "">Select</option>
                                <option value = "All Risk">All Risk</option>
                                <option value = "Burglary">Burglary</option>
                                <option value = "Electronic Equipment">Electronic Equipment</option>
                                <option value = "FG">FG</option>
                                <option value = "Fire">Fire</option>
                                <option value = "Marine">Marine</option>
                                <option value = "Money">Money</option>
                                <option value = "Motor Medical Questionnaire">Motor Medical Questionnaire</option>
                                <option value = "Motor Theft">Motor Theft</option>
                                <option value = "Third Party">Third Party</option>
                                <option value = "Personal Accident">Personal Accident</option>
                                <option value = "Public Liability">Public Liability</option>
                                <option value = "Windscreen">Windscreen</option>
                                <option value = "Quote Estimate Agreement">Quote Estimate Agreement</option>
                                </select>
                            </div>
                        </div>

                        <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Was Insured There: </label>
                            <div class = "col-sm-10">

                                <input type = "text" class = "form-control" id = "Q1" name = "Q1" />
                            </div>
                        </div>

                        <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Cause Of Loss: </label>
                            <div class = "col-sm-10">

                                <textarea class = "form-control" rows = "3" name = "Q2" required></textarea>
                            </div>
                        </div>

                        <div class = "form-group">
                            <label class = "col-sm-2 control-label" for = "Old">Description Of Loss: </label>
                            <div class = "col-sm-10">

                                <textarea class = "form-control" rows = "3" name = "Q3" required></textarea>
                            </div>
                        </div>

                        <h3>Copy of Drivers License:</h3><input type=file name = "files[]">
                        <h3>Copy of Public Permit:</h3><input type=file name = "files[]">
                        <h3>Clearance Report:</h3><input type=file name = "files[]">
                     <div class = "panel-footer">

                                <input value = "Submit" type = "submit" name = "submit" class = "btn btn-primary pull-right">
                            </div>
                        </div>
                        </form>
             </div>
        <!-- /. PAGE INNER  -->
    </div>
    <!-- /. PAGE WRAPPER  -->
</div>
<!-- /. WRAPPER  -->

<div id = "footer-sec">
   iBroker Finance System | Developed By Siyakha Technology</a>
</div>

<script src = "js/jquery-1.10.2.js"></script> 
<!-- BOOTSTRAP SCRIPTS -->
<script src = "js/bootstrap.js"></script>
<!-- METISMENU SCRIPTS -->
<script src = "js/jquery.metisMenu.js"></script>
   <!-- CUSTOM SCRIPTS -->
<script src = "js/custom1.js"></script>



</body>
</html>

И это отправляемый php-файл, который обрабатывает создание PDF-файла и загрузку документов:

<?php
    //set the question values
    $questions = array(
        'name' => "Name of the insured: ",
        'email' => "Email: ",
        'fax' => "Date last paid: ",
        'privateaddress' => "Date of Loss: ",
        'companyaddress' => "Time of Loss: ",
        'contactprivate' => "Contact Number: ",
        'contactcompany' => "Insurer: ",
        'Q1' => "Question 1: ",
        'Q2' => "Question 2: ",
        'Q3' => "Question 3: ",
        'category' => "Category: ",
    );
    //set the question answers
    $name          = $_POST['name'];
    $email         = $_POST['email'];
    $fax           = $_POST['fax'];
    $privateaddress= $_POST['privateaddress'];
    $companyaddress= $_POST['companyaddress'];
    $contactprivate= $_POST['contactprivate'];
    $contactcompany= $_POST['contactcompany'];
    $wdd= $_POST['wdnd'];
    $question1= $_POST['Q1'];
    $question2= $_POST['Q2'];
    $question3= $_POST['Q3'];
    //set the question names
    $Name  = $questions['name'];
    $Email  = $questions['email'];
    $Fax  = $questions['fax'];
    $Privateaddress  = $questions['privateaddress'];
    $Companyaddress  = $questions['companyaddress'];
    $Contactprivate  = $questions['contactprivate'];
    $Contactcompany  = $questions['contactcompany'];
    $WDD  = $questions['category'];
    $q1  = $questions['Q1'];
    $q2  = $questions['Q2'];
    $q3  = $questions['Q3'];

    require('fpdf.php');

    class PDF extends FPDF
    {
        // Page header
        function Header()
        {
            // Logo
            $this->Image('images/logo.png', 10, 6, 30);

            $this->SetFont('Arial', 'B', 15);

            $this->Cell(50);


            $this->Cell(90, 10, 'Claim Form', 'C');
            // Line break
            $this->Ln(20);
        }

        // Page footer
        function Footer()
        {

            $this->SetY(-15);

            $this->SetFont('Arial', 'I', 8);

            $this->Cell(0, 10, 'Page ' . $this->PageNo() . '/{nb}', 0, 0, 'C');
        }
    }


    $pdf = new FPDF();
    $pdf->AddPage();
    $pdf->setFillColor(230,230,230);
    $pdf->SetFont('Arial', 'B', 10);
    //insert questions and answers
    $pdf->Image('logo.png',60,2,-300);
    $pdf->MultiCell(150, 16, sprintf("%s %s"));
    $pdf->Cell(0,10,'Contact No. (+268) 251 87193',0,0,'C');
    $pdf->MultiCell(150, 5, sprintf("%s %s"));
    $pdf->Cell(0,10,'Address : Office number 2, Matsapha M202, Swaziland',0,0,'C');
    $pdf->MultiCell(150, 5, sprintf("%s %s"));
    $pdf->Cell(0,10,'Email Address : [email protected]',0,0,'C');
    $pdf->MultiCell(150, 5, sprintf("%s %s"));
    $pdf->Cell(0,10,'Website : www.minxinsurance.com',0,0,'C');

    $pdf->MultiCell(150, 10, sprintf("%s %s"));
    $pdf->Cell(0,10,'CLAIM FORM',0,0,'C',True);

    $pdf->MultiCell(150, 15, sprintf("%s %s"));

    $pdf->MultiCell(150, 7, sprintf("%s %s", $Name, $name));

    $pdf->MultiCell(150,7,sprintf("%s %s", $Email, $email));

    $pdf->MultiCell(150,7,sprintf("%s %s", $Fax, $fax));

    $pdf->MultiCell(150,7,sprintf("%s %s", $Privateaddress, $privateaddress));

    $pdf->MultiCell(150,7,sprintf("%s %s", $Contactprivate, $contactprivate));

    $pdf->MultiCell(150,7,sprintf("%s %s", $Companyaddress, $companyaddress));

    $pdf->MultiCell(150,7,sprintf("%s %s", $Contactcompany, $contactcompany));
    $pdf->MultiCell(150,7,sprintf("%s %s", $WDD, $wdd));

    $pdf->MultiCell(150,7,sprintf("%s %s", 'Was Insured There: ', $question1));

    $pdf->MultiCell(150,7,sprintf("%s %s", 'Cause of Loss: ', $question2));

    $pdf->MultiCell(150,7,sprintf("%s %s", 'Description of Loss: ', $question3));

    //display pdf

    mkdir("FileBrowser/files/$name", 0777);

    $total = count($_FILES['files']['name']);

    // Loop through each file
    for($i=0; $i<$total; $i++) {
        //Get the temp file path
        $tmpFilePath = $_FILES['files']['tmp_name'][$i];

        //Make sure we have a filepath
        if ($tmpFilePath != ""){
            //Setup our new file path
            $newFilePath = "FileBrowser/files/$name/" . $_FILES['files']['name'][$i];

            //Upload the file into the temp dir
            if (move_uploaded_file($tmpFilePath, $newFilePath)) {

              //Handle other code here

            }
        }
    }


    $filename = "FileBrowser/files/$name/$name.pdf";
    $pdf->Output($filename, 'F');

    require 'PHPMailer/PHPMailerAutoload.php';
    $mail = new PHPMailer;
    $mail->setFrom('[email protected]', 'iBroker Claims');
    $mail->addAddress('[email protected]', 'Elsa');
    $mail->addAddress($email, $name);
    $mail->Subject  = 'New Claim Submitted';
    $mail->Body     = 'A New Claim for ' . $name . " has been submitted on iBroker";
    if (!$mail->send()) {

    } else {

    }
    header('Location: Finance/ClaimManage.php');

Не проверял ваш PHP-код, я предполагаю, что ваши проблемы (по крайней мере частично) связаны с тем, что вам не хватает enctype = "multipart/form-data" в вашем HTML-теге <form />.

Marijke Luttekes 02.04.2018 15:30

Вы разместили много кода. Выполните некоторую отладку, чтобы сузить проблему и удалить весь не относящийся к делу код.

Magnus Eriksson 02.04.2018 15:31

@MarijkeLuttekes, ты был прав !! Спасибо!! Не могу поверить, что я это пропустил. Я переделал макет формы и, кажется, забыл вернуть его обратно: D

Str1fe 02.04.2018 16:03

@funkyfortyniner, могу ли я запросить повторное открытие вопроса, чтобы я мог отметить Марийке как правильную?

Str1fe 02.04.2018 16:04

@ Str1fe почему? Он покрыт дубликатом.

Funk Forty Niner 03.04.2018 03:14

@FunkFortyNiner извините, сэр просто хотел отдать ему должное :) Я так понимаю, это дубликат, спасибо :)

Str1fe 03.04.2018 03:16
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
6
54
0

Другие вопросы по теме