Я установил codeigniter 3 и dompdf. Я следовал за учебником, что работает отлично. В данный момент каждый раз, когда я загружаю представление, например localhost / codeigniter / welcome, PDF-файл загружается напрямую и предлагается для загрузки.
Вместо этого я хотел бы добавить ссылку на страницу просмотра, по которой пользователь может просмотреть страницу и решить, хочет ли он загрузить страницу в формате PDF. я не могу понять, как создать ссылку. Что мне нужно изменить в моем контроллере, чтобы клиент мог просмотреть, прежде чем загрузить страницу в формате PDF и как создать ссылку.
Любая помощь будет назначена
контроллер Welcome.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller {
public function index()
{
$this->load->view('welcome_message');
// Get output html
$html = $this->output->get_output();
// Load pdf library
$this->load->library('pdf');
// Load HTML content
$this->dompdf->loadHtml($html);
// (Optional) Setup the paper size and orientation
$this->dompdf->setPaper('A4', 'landscape');
// Render the HTML as PDF
$this->dompdf->render();
// Output the generated PDF (1 = download and 0 = preview)
$this->dompdf->stream("welcome.pdf", array("Attachment"=>0));
}
}
библиотеки PHP
<?php defined('BASEPATH') OR exit('No direct script access allowed');
// reference the Dompdf namespace
use Dompdf\Dompdf;
class Pdf
{
public function __construct(){
// include autoloader
require_once dirname(__FILE__).'/dompdf/autoload.inc.php';
// instantiate and use the dompdf class
$pdf = new DOMPDF();
$CI =& get_instance();
$CI->dompdf = $pdf;
}
}
?>
Просмотр файла
<body>
<div id="container">
<a target="_blank" class="pdfLink" href="<?php echo base_url('welcome'); ?>">download pdf</a>
<h1>Welcome to CodeIgniter!</h1>
<div id="body">
<p>The page you are looking at is being generated dynamically by CodeIgniter.</p>
<p>If you would like to edit this page you'll find it located at:</p>
<code>application/views/welcome_message.php</code>
<p>The corresponding controller for this page is found at:</p>
<code>application/controllers/Welcome.php</code>
<p>If you are exploring CodeIgniter for the very first time, you should start by reading the <a href="user_guide/">User Guide</a>.</p>
</div>
<p class="footer">Page rendered in <strong>{elapsed_time}</strong> seconds. <?php echo (ENVIRONMENT === 'development') ? 'CodeIgniter Version <strong>' . CI_VERSION . '</strong>' : '' ?></p>
</div>
</body>
</html>