Как исправить «Файл не найден» в var_dump при использовании класса DOCXTemplate в CodeIgniter - PullRequest
0 голосов
/ 13 мая 2019

Я использую класс DOCXTemplate из https://www.phpclasses.org/package/8247-PHP-Create-Microsoft-Word-documents-from-templates.html, для создания документа docx с данными, хранящимися в базе данных, с шаблоном docx.Когда я пытаюсь использовать этот класс, я просто копирую файл класса в свою папку просмотра и создаю новый php-файл для выполнения класса, в соответствии с примером, включенным в файл класса, файл называется download.php.Это мой код:

<?php
    include "docxtemplate.class.php";

    $docx = new DOCXTemplate('template.docx');
    var_dump($docx);

    $docx->set('nama', 'Firlhi');
    $docx->set('jenis_kelamin', 'Laki-Laki');
    $docx->set('alamat', 'Tarakan');
    $docx->set('tgl_lahir', '21/01/1996');
    $docx->set('proyek', 'Pembangunan');

    $docx->downloadAs("evaluasi.docx");

?>

Но он возвращает ошибку, var_dump результат:

object(DOCXTemplate)#19 (5) { ["data":"DOCXTemplate":private]=> array(0) { } ["package":"DOCXTemplate":private]=> NULL ["error":"DOCXTemplate":private]=> string(14) "File not found" ["debug"]=> bool(false) ["datasec"]=> array(0) { } }

И ошибка PHP:

Обнаружена ошибка PHPВажность: Предупреждение

Сообщение: указан неверный аргумент для foreach ()

Имя файла: dashboard_guest / docxtemplate.class.php

Номер строки: 271

Backtrace:

Файл: C: \ xampp2 \ htdocs \ bank_garansi \ application \ views \ dashboard_guest \ docxtemplate.class.php Строка: 271 Функция: _error_handler

Файл: C: \ xampp2 \ htdocs \bank_garansi \ application \ views \ dashboard_guest \ docxtemplate.class.php Строка: 60 ​​Функция: getEntryData

Файл: C: \ xampp2 \ htdocs \ bank_garansi \ application \ views \ dashboard_guest \ docxtemplate.class.php Строка: 423Функция: _parse

Файл: C: \ xampp2 \ htdocs \ bank_garansi \ application \ views \ dashboard_guest \ download.php Строка: 13 Функция: downloadAs

Файл: C: \ xampp2 \ htdocs \bank_garansi \ application \ controllers \ Dashboard_guest.php Строка: 20 Функция: просмотр

Файл: C: \ xampp2 \ htdocs \ bank_garansi \ index.php Строка: 315 Функция: require_once

Я пытался создать новую папку в htdocs и просто создатьФайл класса, файл загрузки и template.docx такие же, как в папке просмотра codeigniter, и это работает.Но когда я пытаюсь в codeigniter это ошибка.По моему мнению, источником ошибки является template.docx внутри папки просмотра, как мне поместить этот файл?

Я хочу использовать класс в codeigniter, помочь мне исправить местоположение этого файла и использоватьКласс DOCXTemplate правильно.Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 14 мая 2019

Я уже исправил это, удалив base_url и сохранив путь.Спасибо за помощь!

0 голосов
/ 13 мая 2019

Просто для того, чтобы начать игру ...

В этом урезании посмотрите, что можно сделать, например, у меня есть файл с именем test.txt, расположенный в проекте в папке \ application \ views \ test.текст.

Я предполагаю, что именно там вы сказали, что ваше дело было, но это не ясно.Так что измените, чтобы удовлетворить.

$filename = APPPATH.'views/test.txt'; // Path and Filename

// This is the test used in the docxtemplate class
if(!is_readable($filename)){
    echo "Error Finding Files";
} else {
    echo "I found it!";
}

И это приводит к "Я нашел это!"отображается

Ключом здесь является использование APPPATH , которое указывает путь к папке приложения и включая ее.Затем вам нужно добавить остальные.

Так что, надеюсь, это даст вам более полное представление о том, как указать путь к файлу шаблона.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...