Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > สอบถามเรื่อง การส่งค่าจาก PHPWord ไปยัง Template ใน word เป็นภาษาไทย บน linux แล้วมันเปิดไฟล์ไม่ได้



 

สอบถามเรื่อง การส่งค่าจาก PHPWord ไปยัง Template ใน word เป็นภาษาไทย บน linux แล้วมันเปิดไฟล์ไม่ได้

 



Topic : 079740



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์




ผมลองบน appserv เเล้วมันเปิดไฟล์ที่ export มาได้ปกตินะครับ เเต่พอลองรันจาก server ที่เป็น linux เเล้วเอาไฟล์ที่ได้มาเปิด
มันก็เป็นดังรูปอ่าครับ

มันขึ้นแบบนี้

Template
<?php
	require_once 'PHPWord.php';
	
	$PHPWord = new PHPWord();
   	$document = $PHPWord->loadTemplate('1.docx');

	$section = $PHPWord->createSection();

        $a='ทดสอบ';
	$section->addText($document->setValue('Value1',$a));

	$document->save('2.docx');
	
?>




Tag : PHP, Word (Word.Application)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-06-13 14:20:47 By : freshymusic View : 2131 Reply : 19
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ภาษาอังกฤษได้ปกติหรือเปล่าครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-13 14:29:22 By : mr.win
 


 

No. 2



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


ภาษาอังกฤษตัวเลขได้ปกตินะครับ ลองใน appserv ภาษาไทยก็ได้ปกติหมดเลยครับ
หรือว่า มันเกี่ยวกับที่ server linux ไม่มีตัวโปรแกรม Ms-word ในการ generate ด้วยไหมอ่าครับ
ลองสมมุติฐานดูอ่าครับ ^^!!
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-13 14:34:51 By : freshymusic
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองใช้พวก iconv() แปลงให้เป็น UTF-8 ดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-13 14:41:14 By : mr.win
 


 

No. 4



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


ผมลองใน Ubuntu เเล้วเอาไฟล์มาเปิดใน window ก็ได้ปกตินะครับ เริ่ม งง เเล้วล่ะครับ
หรือว่าเป็นที่ server
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-13 15:53:50 By : freshymusic
 


 

No. 5



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

คุณดาวน์โหลด Code มาจากไหนครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-13 17:41:34 By : mr.win
 


 

No. 6



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


จากเว็บนี้แหละครับ เเต่ผมลองมาแก้

$section->addText($document->setValue('Value1',$a)); นิดหน่อย

จริงๆใช้เเค่ $document->setValue('Value1',$a); ก็ได้อยู่ครับ

https://www.thaicreate.com/community/phpword-thai.html
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-13 22:12:48 By : freshymusic
 


 

No. 7



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

มันน่าจะยังมีปัญหาภาษาไทยอยู่น่ะครับ (ยังไม่สมบูรณ์)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 06:38:36 By : mr.win
 


 

No. 8



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


อ่าครับ ขอบคุณมากเลยนะครับ ^^
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 07:37:49 By : freshymusic
 


 

No. 9



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


ที่ผมลองเดาอีกข้อนึงนะครับ พี่วิน

คือ ที่ตัว Linux อ่าครับ มันจะมีส่วนเกี่ยวข้องกับที่ บน Ubuntu ของผมนั้นมันมีโปรแกรม Openoffice

แต่บนตัวของ Server ที่เป็น Linux นั้นไม่ได้ลง Openoffice จึงไม่สามารถเปิดไฟล์ได้

เพราะเนื่องมาจาก ตัวโปรแกรมนั้นอาจไปเรียก Libary ของ Openoffice มาเกี่ยวด้วยหรือป่าวอ่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 09:18:22 By : freshymusic
 


 

No. 10



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ผมไม่ทราบเหมือนกันครับ แต่คิดว่าไม่น่าจะเกี่ยวน่ะครับ น่าจะมีปัญหาเรื่องภาษาไทยนี่แหละครับ ลองใช้การแปลงเป็น UTF-8 ดูครับ น่าจะได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 09:43:03 By : mr.win
 


 

No. 11



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


ลองเปลี่ยนดูเเล้ว ก็ยังไม่ได้เหมือนเดิมแหละครับ

น่าจะมีปัญหาตอนส่งค่าภาษาไทย เเล้ว มันเข้าใจไม่ตรงกันกับตัว server เลย

ทำให้เปิดไม่ได้แหละครับ พี่ ^^!!
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 10:46:59 By : freshymusic
 


 

No. 12



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

สงสัยได้รอเวอร์ชั่นที่ผ่านการแก้ไขมาแล้วครับ เพราะตัวนั้นผมไป remark ฟังก์ชั่น utf8_encode ไว้ เลยคิดว่ามันน่าจะมีปัญหาครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 11:38:43 By : mr.win
 


 

No. 13



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


ยังไงก็ขอบคุณมากนะครับ พี่วิน ^^
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 16:25:31 By : freshymusic
 


 

No. 14



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


ผมลอง อีกวิธีนึงก็คือ

นำไฟล์ที่ ส่งค่าเป็นภาษาไทย (1.docx) เเล้วเปิดไม่ได้ มาเทียบ กับ ไฟล์ที่ ส่งค่าเป็นภาษาอังกฤษ (2.docx) เปิดได้

เเล้วเปลี่ยนนามสกุลของไฟล์ทั้ง 2 เป็น 1.zip และ 2.zip แทน

จากนั้นก็เปิดไฟล์ เปิด 1.zip และ 2.zip โดยเข้าไปดูที่ Folder word-->document.xml

นำข้อมูลมาเทียบกัน

โดยที่ไฟล์ document.xml ของ 1.zip ตรงตำแหน่งที่เราส่งค่าไป มันขึ้นภาษา อะไรก็ไม่รู้ จึงทำให้ ไฟล์นั้นเปิดไม่ได้

แต่พอเราแก้ไฟล์ document.xml โดยการพิมไทยเข้าไปใหม่ ก็สามารถทำให้ไฟล์นั้นเปิดได้ปกติ



== ปัญหาก็น่าจะ เรื่องภาษา ที่ save file ของตัว server ออกมาเนี่ยแหละครับ ==
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-14 17:22:41 By : freshymusic
 


 

No. 15



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ถ้าแก้ไขได้ก็บอกไว้ด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-15 06:43:59 By : mr.win
 


 

No. 16



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


แก้ได้เเล้วล่ะครับ ผมลอง Encoding ไฟล์ให้เป็น UTF-8

แล้วก็ดึงข้อมูลจาก DB มาโดยใช้คำสั่ง ไม่งั้นมันจะ Error เหมือนเดิม

Code (PHP)
$document->setValue('Value4',"".$LandNo = iconv("windows-874","UTF-8","".$con->Land[0]->LandNumber."")."");

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-16 15:18:45 By : freshymusic
 


 

No. 17



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ว่าแล้ว ให้ลองดู UTF-8
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-16 15:27:34 By : mr.win
 


 

No. 18



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


555+ อ่าครับ

เเต่ผมก็ งง ว่า ทำไมของ appserv กับ ubuntu แบบปกติ

ที่ไม่ได้แก้ code มันก็เปิดได้เนี่ยแหละครับ (^-^!!)

แต่ของตัว server ตัวนี้ ต้องมา แก้ ถึงจะได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-16 15:34:37 By : freshymusic
 


 

No. 19



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

พี่อยากสอบถามว่า เราจะสามารถดึงข้อมูลใน MySQL มาแสดงใน word template ทั้งหมดได้ไหมค่ะ โดยโค้ดมีดังนี้ค่ะ

Code (PHP)
<?
	$objConnect = mysql_connect("localhost","root","1234") or die("Error Connect to Database");
	$objDB = mysql_select_db("db_cw");
	mysql_query("SET NAMES UTF8");
	$strSQL = "SELECT * FROM  detail_sp";
	$query_Recordset1 = "SELECT * FROM detail_sp ORDER BY id_sp ASC";
	$objQuery = mysql_query($strSQL);
	       $result = mysql_query($query_Recordset1,$objConnect ) or die ("ไม่สามารถ query คำสั่งได้ครับ") ; 
	$rbw = mysql_fetch_assoc($result);
	$num = mysql_num_rows($result);

?>
<?
require_once '../PHPWord.php';

$PHPWord = new PHPWord();

$document = $PHPWord->loadTemplate('Solarsystem1.docx');

		while($objResult = mysql_fetch_array($objQuery)){

			for($x = 0 ; $x < mysql_num_rows($result) ; $x++){
		
				$document->setValue('$x', $objResult['detail_sp']);

				$document->setValue('Value1',$objResult["name1_sp"]);
				$document->setValue('Value2',$objResult['schoolname_sp']);
				$document->setValue('Value3',$objResult['name2_sp']);

				
			}
	}
        $document->setValue('weekday', date('l'));
        $document->setValue('time', date('H:i'));
        $document->save('Solarsystem.docx');
	
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-10 20:34:07 By : ลูกอม
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่อง การส่งค่าจาก PHPWord ไปยัง Template ใน word เป็นภาษาไทย บน linux แล้วมันเปิดไฟล์ไม่ได้
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่