2013-01-16 57 views
0

你好我試圖用HTML2PDF創建一個包含在VICH表中的PHP文件的PDF日從MySQL數據庫中的數據取出,並通過使用while循環產生 但聞一TR運行PHP文件
它說follwoing錯誤 TCPDF ERROR:一些數據已輸出,不能發送PDF文件[在這裏輸入的形象描述] [1] ñ任何人的幫助我在解決問題請 這裏是我的代碼,使用HTML2PDF API保存在PHP和HTML表格生成MySQL數據

<?php 

session_start(); 
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); 
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT"); 
header("Cache-Control: no-cache, must-revalidate"); 
header("Pragma: no-cache"); 
//error_reporting(0); 
/* 
    Author : yaser kazi 
    Description : This File Contain Additions and Editing part for the Paxes 
*/ 

if (!isset($_SESSION["username"])) { 
    header("location: unauthorize_access.html"); 
    exit(); 
} 


if (isset($_GET["cityprin"])) { 

    mysql_connect("localhost", "root", '') or die(mysql_error()); 
    mysql_select_db('webapp') or die(mysql_error()); 


    $get = mysql_query("SELECT code, `name` FROM city ORDER BY `name`") or die(mysql_error()); 




    $ctr = 0; 

    ini_set("memory_limit", "50M"); 
    ob_start(); 
    ?> 
<style type="text/css" media="all"> 
       <!-- 
       body { 
        margin:0px; 
        font-family:Verdana, Arial, Helvetica, sans-serif; 
        font-size:12px; 
       } 

       span { 
        font-size:14px; 
       } 

       td { 
        width: 100mm; 
        max-width: 100mm; 
        height: 33mm; 
        max-height:33mm; 
        top:0mm; 
       } 
       table { 
        border-collapse:collapse; 
       } 
       --> 
      </style> 

    <?php 

      echo "<table border=\"1\" align=\"right\" style =\"width: 205mm;\">"; 
      echo "<th>Srno</th>"; 
      echo "<th>Code</th>"; 
      echo "<th>Name</th>"; 

    while ($city = mysql_fetch_array($get)) { 
      $ctr++; 
      echo "<td style=\"width: 100mm; max-width: 100mm; height:33mm; padding-left:1mm;\" valign=\"right\">".$ctr."</td>"; 
      echo "<td style=\"width: 100mm; max-width: 100mm; height:33mm; padding-left:7mm;\" valign=\"right\">".$city['code']."</td>"; 
      echo "<td style=\"width: 100mm; max-width: 100mm; height:33mm; padding-left:7mm;\" valign=\"right\">".$city['name']."</td>"; 
       } 
    echo "</table>"; 
} // Submit Tag Close 

?> 

      <?php 
      $content = ob_get_clean(); 
// conversion HTML => PDF 
      require_once('html2pdf/html2pdf.class.php'); 
      try { 
       $html2pdf = new HTML2PDF('P', 'A4', 'EN', false, 'ISO-8859-15', array("5mm", "13mm", "0mm", "0mm")); 
       $html2pdf->pdf->SetAuthor('CepheiSys'); 
       $html2pdf->pdf->SetTitle('City_list'); 
//  $html2pdf->pdf->SetSubject('HTML2PDF Wiki'); 
       //  $html2pdf->pdf->SetKeywords('HTML2PDF, TCPDF, example, wiki'); 
       $html2pdf->setDefaultFont('Arial'); 
       $html2pdf->writeHTML($content); 
       $html2pdf->Output('City_list.pdf'); 
      } catch (HTML2PDF_exception $e) { 
       echo $e; 
      } 
      ?> 
+0

如果查看HTML,而不是生成的PDF會發生什麼想法? – cimmanon

+0

它顯示了一個錯誤 TCPDF錯誤:某些數據已經被輸出,不能發送PDF文件[在這裏輸入的形象描述] [1] – john

+0

可以uplease幫我解決這個問題 – john

回答

0

在輸出這些標題之前,您已經有了某種輸出。有幾件事要檢查:

  • 在代碼的早些時候你有任何回聲聲明(或類似)嗎?
  • 這個PHP標籤之前有沒有空格?新行或標籤會觸發輸出發送到瀏覽器
  • 您是否關閉了編輯器中的BOM功能,因爲這會導致UTF8文檔和觸發輸出發送到瀏覽器的問題
  • 檢查錯誤日誌,應該有一個行號與該錯誤。它應該給你從哪裏開始尋找
+0

實際上,日誌中可能沒有錯誤(或者如果有的話,它不會是有用的)。錯誤被生成PDF的庫捕獲,而不是由PHP本身捕獲。 – cimmanon

+0

所以你可以弄明白並修改我的代碼,因爲我是新的php – john

+0

所以可以解決這個問題呢? – john