TCPDF อยากสอบถามเรื่องรูป base64 ในฐานข้อมูล มาแสดงในตาราง
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา TCPDF อยากสอบถามเรื่องรูป base64 ในฐานข้อมูล มาแสดงในตาราง
TCPDF อยากสอบถามเรื่องรูป base64 ในฐานข้อมูล มาแสดงในตาราง
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | <?php require_once ( 'tcpdf/tcpdf.php' ); include ( 'tcpdf/tcpdf_include.php' ); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8' , false); // set document informations $pdf ->SetCreator(PDF_CREATOR); $pdf ->SetAuthor( 'Nicola Asuni' ); $pdf ->SetTitle( 'TCPDF Example 009' ); $pdf ->SetSubject( 'TCPDF Tutorial' ); $pdf ->SetKeywords( 'TCPDF, PDF, example, test, guide' ); // set default header data $pdf ->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING); // set header and footer fonts $pdf ->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '' , PDF_FONT_SIZE_MAIN)); $pdf ->setFooterFont(Array(PDF_FONT_NAME_DATA, '' , PDF_FONT_SIZE_DATA)); // set default monospaced font $pdf ->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); // set margins $pdf ->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); $pdf ->SetHeaderMargin(PDF_MARGIN_HEADER); $pdf ->SetFooterMargin(PDF_MARGIN_FOOTER); // set auto page breaks $pdf ->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); // set image scale factor $pdf ->setImageScale(PDF_IMAGE_SCALE_RATIO); // set some language-dependent strings (optional) if (@ file_exists (dirname( __FILE__ ). '/lang/eng.php' )) { require_once (dirname( __FILE__ ). '/lang/eng.php' ); $pdf ->setLanguageArray( $l ); } // set font $pdf ->SetFont( 'thsarabun' , '' , 13); // add a page $pdf ->AddPage(); // ----------------------------------------------------------------------------- mysql_connect( "localhost" , "root" , "" ) or die ( "Error connecting to database: " .mysql_error()); mysql_select_db( "aunjaic1_TDASampleY" ) or die (mysql_error()); mysql_query( "SET NAMES UTF8" ); $tbl = ' <table cellpadding= "2" cellspacing= "2" > <tr style= "background-color:#666666;color:#FFFFFF;font-size:1.5em;" align = "center" > <th colspan= "9" >ข้อมูลบัตรประชาชน</th> </tr> <tr style= "background-color:#999999;color:#ffffff;font-size:1em; font-weight: bold;" align = "center" > <td>ID</td> <td>NID</td> <td>Name</td> <td>surname</td> </tr>'; $aar = $_POST [ "chk" ]; $com_id = implode( "," , $aar ); for ( $i =0; $i < count ( $_POST [ "chk" ]); $i ++) { if (trim( $_POST [ "chk" ][ $i ]) != "" ) { $sql = "SELECT * from ThaiIDCard Where id IN ($com_id) order by id" ; } else { $sql = "SELECT * from ThaiIDCard order by id" ; } } if ( $sql == "" ){ $sql = "SELECT * from ThaiIDCard order by id" ; } $sqlQ = mysql_query( $sql ) or die ( "Error Query [" . $sql . "]" ); while ( $result = mysql_fetch_array( $sqlQ )){ // Example of Image from data stream ('PHP rules') $imgdata = base64_decode ( "'" . $result [ "photo" ]. "'" ); $tbl .=' <tr style= "background-color:#ffffcc;color:#000000;font-size:1em;" > <td> '.$result["id"].' </td> <td> '.$result["idnum"].' </td> <td> '.$result["nameT"].' </td> <td> '.$result["surnameT"].' </td> </tr>'; $pdf ->Image( '@' . $imgdata ); } $tbl .= '</table>' ; // output the HTML content $pdf ->writeHTML( $tbl , true, false, true, false, '' ); //Close and output PDF document $pdf ->Output( 'ThaiIDCloud.pdf' , 'I' ); // ----------------------------------------------------------------------------- ถ้าให้ แสดงรปภาพทำได้แล้วค่ะ แต่ต้องการนะเอารูปภาพนั้นมาวนลูป แสดงในตารางแถวเดียว กับข้อมูล |

คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
ความคิดเห็นที่
1
ต้องดูว่า ทดสองแสดงรูปได้ นั้นหมายถึงแสดงพร้อมกันหลายรูป หรือรูปเดียว
เพราะเงื่อนไขการวนลูปจะเป็นการแสดงรูปหลายรูป การทำงานก็จะใช้ทรัพยากรเครื่องหรือใช้ ram เยอะขึ้น process เยอะขึ้นไปด้วย
อาจจะลองสมมติวนในลูป แค่รอบเดียว ถ้ารูปแสดง ก็ทดสอบต่อเพิ่มจำนวนรอบ ว่ามีผลต่อการแสดงของรูปหรือไม่
แนวทางการตรวจสอบก็ประมาณนี้
https://tcpdf.org/examples/example_009/
ในตัวอย่างการวนลูป จะใช้วิธีใช้รูปจาก image file
และใช้จาก stream base64_decode รูปเดียว
อาจจะทดสอบใช้รูปแบบกำหนดตายตัวในลูปเหมือนตัวอย่างทดสอบดูว่า ทำงานถูกต้อง แสดงรูปหรือไม่
และก็ทพสอบแบบใช้รูปจาก stream ในลูป ทำงานหรือไม่
>>> อัพเดท >>> 06-02-2019
------------------------------------------
>>> อัพเดท >>> 06-02-2019
------------------------------------------
เพราะเงื่อนไขการวนลูปจะเป็นการแสดงรูปหลายรูป การทำงานก็จะใช้ทรัพยากรเครื่องหรือใช้ ram เยอะขึ้น process เยอะขึ้นไปด้วย
อาจจะลองสมมติวนในลูป แค่รอบเดียว ถ้ารูปแสดง ก็ทดสอบต่อเพิ่มจำนวนรอบ ว่ามีผลต่อการแสดงของรูปหรือไม่
แนวทางการตรวจสอบก็ประมาณนี้
https://tcpdf.org/examples/example_009/
ในตัวอย่างการวนลูป จะใช้วิธีใช้รูปจาก image file
และใช้จาก stream base64_decode รูปเดียว
อาจจะทดสอบใช้รูปแบบกำหนดตายตัวในลูปเหมือนตัวอย่างทดสอบดูว่า ทำงานถูกต้อง แสดงรูปหรือไม่
และก็ทพสอบแบบใช้รูปจาก stream ในลูป ทำงานหรือไม่
>>> อัพเดท >>> 06-02-2019
------------------------------------------
ตัวอย่าง tcpdf ดึงข้อมูลจากฐานข้อมูล สร้าง report อย่างง่าย http://niik.in/575
https://www.ninenik.com/content.php?arti_id=575 via @ninenik
>>> อัพเดท >>> 06-02-2019
------------------------------------------

ขอบคุณทุกการสนับสนุน
![]()