【问题标题】:Undefined variable session on exporting data from mysql to pdf with ezpdf via php [duplicate]通过php使用ezpdf将数据从mysql导出到pdf的未定义变量会话[重复]
【发布时间】:2015-11-06 02:41:35
【问题描述】:

我在通过 php 使用 ezpdf 将数据从 mysql 导出到 pdf 时遇到问题。问题是在执行文件时总是说未定义的变量 $sesen_uk。但是当我将 where 条件更改为手动喜欢生产时,就没有问题了。

<?php
require 'config.php';
require 'class.ezpdf.php';

$sesen_uk     = $_SESSION['unitkerja'];

$sql  = mysqli_query($conn, "SELECT * FROM arsip WHERE lokasi = '$sesen_uk' ");
$i    = 1;
if (mysqli_num_rows($sql) > 0) // Menampilkan data apabila ada datanya
{
  while($tampil = mysqli_fetch_array($sql)) 
  {
    $data[$i] = array ( 'No. Urut'      => $i,
                    'No. Surat'     => $tampil['no_surat'],
                    'Uraian'        => $tampil['uraian'],
                    'Lokasi'        => $tampil['lokasi'],
                  );
            $i++;
  }

$pdf = new Cezpdf('A4','portrait');
$pdf->ezSetCmMargins(1, 3, 3, 3);
$pdf->addJpegFromFile('images/logo.jpg',45,758,40);
$pdf->ezText('Monthly Report', 17, array('justification' => 'center'));
$pdf->ezSetDy(-10);
$pdf->ezSetDy(-10);

$pdf->line(31, 755, 565, 755);
$pdf->ezTable($data, '', '', '');
$pdf->ezSetDy(-50);

$pdf->ezStartPageNumbers(564, 20, 8);
$pdf->ezStream();
}  
  else
  {
    echo '<script>alert("No data");location.replace("report.php")</script>';
  }
?>

任何帮助都会很棒,谢谢。

【问题讨论】:

  • 你没有开始会话
  • 天哪,非常感谢@Fred-ii-先生,

标签: php mysql pdf


【解决方案1】:

您的代码不包含session_start();,因此会话从未开始。

需要使用会话驻留在所有文件中。

最好先检查它是否设置/不为空。

即:if(isset($_SESSION['unitkerja'])){...} else{...}

或:

if(isset($_SESSION['unitkerja']) &amp;&amp; !empty($_SESSION['unitkerja'])){...}

参考资料:

另外,您可以接受 SQL 注入。使用准备好的语句。

参考文献:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-16
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    • 2017-02-24
    • 2012-12-12
    • 2011-01-12
    相关资源
    最近更新 更多