พบกับบทความเกี่ยวกับคอมพิวเตอร์และ programming ได้ที่ http://articles.modoeye.com
PHP development / เกี่ยวกับ print
pololike
Mon 28 Nov 2005 10:29:27
อยากทราบว่าใน php เนี่ยเราสามารถสั่งให้มันพิมพ์ข้อมูลออกมาอัตโนมัติเลยได้มั้ย ประมาณว่าเมื่อมีข้อมูล order ใหม่เข้ามาในฐานข้อมูลก้อให้มันสั่งพิมพ์ข้อมูลออกมาเลยโดยอัตโนมัติได้หรือป่าว ถ้าได้ต้องทำยังงัยเหรอค่ะ หรือถ้าไม่ได้ควรทำยังงัยดี ช่วยหน่อยนะค่ะ
Administrator
Mon 28 Nov 2005 11:45:26
ถ้าสั่งพิพม์ที่หมายถึงคือการสั่งให้ printer พิมพ์งานตามต้องการอัตโนมัติ ลองใช้
printer function ใน PHP ดูครับ
การติดตั้งเพียงแค่ทำการ enable module php_printer.dll ใน php.ini ซึ่งหาดาวน์โหลดได้ใน PECL extention ครับ

แล้วสามารถใช้ printer function ได้เลยครับ
pololike
Mon 28 Nov 2005 11:55:19

ดาวน์โหลดไม่ได้อ่ะค่ะ สามารถดาวน์โหลดจากที่ไหนได้อีกมั่งค่ะ

Administrator
Mon 28 Nov 2005 13:34:09
คุณสามารถดาวน์โหลดได้ที่นี่ครับ
pololike
Tue 29 Nov 2005 08:53:22

โหลดไปแล้วค่ะ แต่ว่าใช้ไม่ค่อยถูกลองช่วยอธิบายวิธีการใช้งานคร่าวๆหน่อยได้มั้ยค่ะ หรือว่าบอกที่ศึกษาก้อได้ค่ะ ขอบคุณค่ะ

Administrator
Tue 29 Nov 2005 10:16:54
การทำงานของ extension นี้คือสามารถติดต่อกับ printer ได้โดยตรงครับ ซึ่งสามารถอ่านการใช้งาน function ได้ที่นี่ครับ
pololike
Wed 30 Nov 2005 08:55:17

ช่วยหน่อยนะคะปวดหัวจะแย่แล้ว ทำไม่ถูกเลยอ่ะค่ะ คือว่าเราจะสามารถทราบได้หรือไม่ว่าตอนนี้มี printer อะไรอยู่ในเครื่องของเราบ้าง และพอเราทราบแล้วเราก็จะเขียนโค้ดสั่งให้ข้อมูลพิมพ์ออกมาที่ printer เครื่องนั้นโดยอัตโนมัติเมื่อมีข้อมูลใหม่เข้าสู่ระบบ โดยทั้งหมดนี้เขียนโค้ดกำกับด้วย php เลยจะมั้ยค่ะ ช่วยหน่อยเค้าต้องการแบบนี้ไม่เคยทำเลยทำไม่ถูก ฮือๆๆๆ

Administrator
Wed 30 Nov 2005 11:12:50
การหารายชื่อของ printer นั้นสามารถใช้ function printer_list() ได้ครับโดยค่าที่ถูกส่งออกมาจะเป็น array ของ array printer ครับ การใช้งานเช่น

<select>
<?
   foreach (printer_list(PRINTER_ENUM_LOCAL| PRINTER_ENUM_SHARED) as $printer){
       echo "<option value=\"" . addslashes(strtoupper($printer["NAME"])) . "\">" . strtoupper($printer["NAME"]) . "\n";
    }
?>
</select>

parameter ของ printer_list(int enumtype [,string name [,int level]]) นั้นมีค่าต่างๆดังนี้ครับ
  • PRINTER_ENUM_LOCAL หา printer ที่ถูกติดตั้งในเครื่อง local
  • PRINTER_ENUM_NAME หา printer จาก parameter name ซึ่งอาจจะเป็น local หรือ shared printer ก็ได้
  • PRINTER_ENUM_SHARED หา printer ที่ถูก shared
  • PRINTER_ENUM_DEFAULT (win 9x เท่านั้น) หา printer ที่ถูกตั้งเป็น default
  • PRINTER_ENUM_CONNECTIONS (winnt เท่านั้น) หา printer ที่ถูกสร้าง connection ไว้
  • PRINTER_ENUM_NETWORK (winnt เท่านั้น) หา printer ที่ถูกตั้งเป็น network printer ต้องใช้กับ parameter level เป็น 1
  • PRINTER_ENUM_REMOTE (winnt เท่านั้น) หา printer ที่เป็น network printer หรือ print server ต้องใช้กับ parameter level เป็น 1
ผลที่ได้จะได้เป็น รายชื่อของ printer อยู่ใน combobox ครับ ค่าของ printer_list() นั้นจะมีค่าเป็น ตัวอย่างดังนี้ครับ
Array
(
[0] => Array
(
[NAME] => Microsoft Office Document Image Writer
[DESCRIPTION] => Microsoft Office Document Image Writer,Microsoft Office Document Image Writer Driver,
[COMMENT] =>
)

[1] => Array
(
[NAME] => Canon i250
[DESCRIPTION] => Canon i250,Canon i250,
[COMMENT] =>
)

[2] => Array
(
[NAME] => Adobe PDF
[DESCRIPTION] => Adobe PDF,Adobe PDF Converter,My Documents
[COMMENT] =>
)

)
ลองนำไปประยุกต์ดูนะครับ
pololike
Wed 21 Dec 2005 08:38:27

ขอถามหน่อยนะค่ะว่าเราจะเขียนคำสั่งประมาณไหนที่จะทำให้มันสามารถ print ข้อมูลออกแบบ direct ได้เลยคือเราไม่ต้องเลือกเครื่องปริ้น เรากำหนดเครื่องปริ้นเอาไว้แล้วเมื่อมีข้อมูลที่ต้องการมาก็ปริ้นได้เลยไม่ต้องเลือกเครื่องปริ้นอยู่อ่ะค่ะ

Administrator
Wed 21 Dec 2005 12:13:20
<?
$buffer = "ทดสอบการพรินท์";

$handle = printer_open("HP Deskjet i360");
หรือ
$handle = printer_open("\\\\computer_name\\printer_name");


printer_set_option($handle, PRINTER_PAPER_FORMAT, PRINTER_FORMAT_A4);

printer_write($handle, $buffer);

printer_close($handle);
?>
ลองดูประมาณนี้ล่ะครับ
pololike
Thu 22 Dec 2005 08:44:14
ขอโทษนะค่ะที่ต้องกวนอีกแล้วคือว่าตอนนี้มันขึ้นว่า Fatal error: Call to undefined function printer_open() in C:\AppServ\www\test\test.php on line 4 จากที่ก่อนหน้านี้มันไม่ขึ้นมันใช้ได้ปกติไปแก้ไฟล์ php.ini เอาเครื่องหมาย ; ออกตรง php_printer.dll และ php default printer="" แล้วแต่มันก็ยังใช้ไม่ได้ไม่ทราบว่าเป็นเพราะอะไรเหรอค่ะ (เพิ่งลงโปรแกรมใหม่นะค่ะมันก็เลยต้องเซ็ทใหม่แล้วมันก็ใช้ไม่ได้ช่วยหน่อยนะค่ะ) ขอบคุณมากมากค่ะ
Administrator
Thu 22 Dec 2005 11:10:38
ไม่ทราบว่าทำการดาวน์โหลด PECL มาหรือยังครับ
ถ้าทุกอย่างถูกติดตั้งแล้วลองเรียก phpinfo() ดูว่ามี module printer โชว์อยู่ด้วยหรือเปล่าครับ
pololike
pololike
Thu 22 Dec 2005 11:49:44

เรียก phpinfo มาแล้วปรากฎว่าไม่มี module printer ค่ะ แล้วดาวน์โหลด PECL มาแล้วพอดาวน์โหลดมาแล้วเราต้องเอาไปไว้ที่ไหนค่ะ

Administrator
Thu 22 Dec 2005 16:43:53
นำไปติดตั้งใน directory extension ครับ ผมไม่ได้ใช้ appserv ไม่ทราบว่า default อยู่ที่ไหนครับ ลองดูใน php.ini ครับว่าโปรแกรมติดตั้ง default ไว้ที่ไหนครับ
maskrider555
maskrider555
Tue 10 Oct 2006 09:08:25

ขอบคุณมากนะครับ  ผมได้ทดสอบเอาตัวอย่างที่ได้มาลองใช้แล้ว ทำงานได้จริงครับผม

siambophit
siambophit
Wed 18 Oct 2006 11:50:06

ช่วยแนะนำด้วยครับ

คือว่าผมลองทำตามวิธีที่แนะนำข้างต้นแต่ว่าติดเรื่องการติดตั้ง directory extension ครับ เลยทำอะไรไม่ถูกเลย แนะนำด้วยครับ

Administrator
Wed 18 Oct 2006 20:55:12
ดูใน php.ini ครับว่าตอนนี้ extension path ชี้ไปที่ใดครับ ถ้าเป็น ./ ก็ให้เอา php_printer.dll ไปไว้ใน c:\windows\system32 ครับ หลังจากนั้น restart webserver ของคุณดูครับ จากนั้น phpinfo() ดูว่ามี module printer หรือยังครับ
อ๊อด
อ๊อด
Thu 2 Nov 2006 18:09:53

ขอรบกวนสอบถามหน่อยนะคะ คือดิฉันเขียนโปรแกรมโดยใช้ print func. ของ php แต่ภาษาไทยอ่านไม่รู้เรื่อง มีวิธีแก้ไขหรือเปล่าคะ ขอบคุณค่ะ

Administrator
Wed 8 Nov 2006 00:20:05
ไม่ทราบว่าได้ตั้งค่า font หรือไม่ครับ ตั้งเป็นค่าใด
infono
infono
Wed 23 Jul 2008 15:55:59

ขอถามหน่อยคับ ถ้าผมติดตั้งเครื่อง printer ไว้ที่เครื่อง client แล้ว php สามารถสั่ง print ที่เครื่อง client ได้ไหมคับ ถ้าได้ต้องทำอย่างไงคับ

webmaster
webmaster
Wed 23 Jul 2008 23:34:22
เข้าใจว่าไม่ได้นะครับ ยังไม่เคยลองจริงๆ หรือลอง map printer ดูครับ
Reply
Name:
E-mail:
Home | Services | Forum | Classified | Directories | Support | Contact
ATOM feed RSS 0.9 feed RSS 1.0 feed RSS 2.0 feed
Copyright © 2005 - 2007 Modoeye.com, All Rights Reserved.
Disclaimer | Privacy policy | Term of Use | Term of Services
Valid XHTML Valid CSS! PHP: Hypertext Preprocessor MySQL database Apache Powered! FreeBSD Power to serve
Modoeye Sitemap Client login