Tag Archives: php

วิธี Enabled Upload progress บน Drupal

ในส่วนของ Status report ของ drupal ถ้าขึ้นคำเตือนแบบด้านล่างนี้นะครับ
“Your server is capable of displaying file upload progress, but does not have the required libraries. It is recommended to install the PECL uploadprogress library (preferred) or to install APC.”
วิธีเปิดใช้ก็คือ

  • download ไฟล์ php_uploadprogress.dll และ php_apc.dll ไปใสไว้ที่ ext ของ php ยกตัวอย่างนะครับ C:\AppServ\php5\ext ส่วนใคร config ไว้ที่ไหนก็ไปใส่ให้ถูกนะครับ
  • เปิด php.ini มาแก้ เพิ่ม 2 บรรทัดนี้
    extension=php_uploadprogress.dll
    extension=php_apc.dll
  • จากนั้นก็ save แล้ว Restart apache ลองดูครับว่าใช้ได้หรือยัง
  • วิธีทดสอบก็เอาไฟล์ examples ที่ผมแนบไปด้วยจากลิ้งด้านล่างไปทดสอบที่ server ผมจะบอกว่าได้หรือไม่ได้
  • ถ้าไม่ได้ต้องเพิ่มอีกสองบรรทัดนี้กรณีไม่สามารถเขียนไฟล์ temp ลงระบบได้ ไปเพิ่มที่ php.ini
    upload_tmp_dir = D:\temp\upload_tmp_dir
    uploadprogress.file.filename_template=D:\temp\upt_%s.txtหมายเหตุ:D:\temp\upload_tmp_dir เป็นพาธสมมุติที่จะให้เก็บนะครับ

จากนั้นลองทดสอบกับตัว examples ถ้าเป็นสีเขียวก็สมบูรณ์ครับ ลองอัพโหลดไฟล์ทดสอบดู

ไฟล์แนบครับ Enabled-Upload-progress

ความรู้บางส่วนมาจาก http://drupal.org/node/259744

แก้ปัญหา Fatal error: Maximum execution time

ถ้าเจอข้อความ error ว่า Fatal error: Maximum execution time ตามด้วยเวลา วิธีแก้มี 3 วิธี เลือกทำวิธีใดก็ได้
วิธีแรก แก้ที่ php.ini ตรงบรรทัดที่เขียนว่า “max_execution_time” ก็เพิ่มตัวเลขเข้าไป
วิธีที่สอง เพิ่มที่ .htaccess “php_value max_execution_time 60″ เปลี่ยน 60 เป็นเวลาที่ต้องการก็ได้
วิธีที่สาม แก้ที่ script หรือถ้า wordpress แก้ที่ wp-config เพิ่มบรรทัดนี้ “set_time_limit(เวลา)” ถ้าใส่ 0 คือ ไม่มีลิมิต

ทำเสร็จแล้ว Restart Apache

ที่มา: thaiseoboard.com

วิธีการติดตั้ง php5 บน Apache2.2 ของ Windows

หลังจากติดตั้ง apache2.2 (ขอข้ามขั้นตอนนี้ไปก่อนครับ) แล้วก็ไปโหลด php5 แบบ zip file จากเว็บของ php http://www.php.net/downloads.php
คลายซิปไฟล์ที่ c:\php หรือที่ที่คุณต้องการเก็บระบบของ webserver จากนั้นให้ไปแก้ไฟล์ php.ini ถ้าไม่มีก็ก๊อปปี้จาก php.ini-recommended หรือ php.ini-dist แล้วเปลี่ยนชื่อก็ได้ครับ

ที่ไฟล์ php.ini

แก้ให้โหลด extension ตามนี้ครับ เอาเครื่องหมาย “;” ด้านหน้าออก

1
2
3
4
5
6
7
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mcrypt.dll
extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll

และแก้บรรทัดนี้

1
extension_dir = "./"

จาก

1
extension_dir = "./"

เป็น

1
extension_dir = "C:\php\ext"

ยกตัวอย่างนะครับ บนเครื่องคุณอาจไม่เหมือนกัน เพื่อสั่งให้ไปโหลด extension ได้จากที่ไหน

หลังจากแก้แล้วให้ก๊อปปี้ไฟล์ php.ini ไปไว้ที่ C:\WINDOWS

หลังจากนั้นไปแก้ไฟล์ httpd.conf
อยู่ที่ C:\Apache Software Foundation\Apache2.2\conf
ยกตัวอย่างนะครับ บนเครื่องคุณอาจไม่เหมือนกัน อยู่ที่การติดตั้งตอนแรกว่าเก็บไว้ที่ไหน และควรทำการสำรองไว้ก่อนที่จะแก้นะครับ
เพิ่มบรรทัดนี้เข้าไปครับ บริเวณที่มีคำว่า LoadModule อยู่กันเยอะๆ

1
LoadModule php5_module "C:\php\php5apache2_2.dll"

แล้วก็เพิ่มสองบรรทัดนี้ไว้ล่างสุดของไฟล์ครับ

1
2
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3

จากนั้นก็บันทึกแล้วทำการ Restart Apache ครับ

วิธีทดสอบว่าสามารถใช้ได้ไหมก็สร้างไฟล์ php แล้วใส่ code นี้ครับ

1
2
3
<?PHP
phpinfo();
?>

แล้วบันทึกไว้ที่ Apache Software Foundation\Apache2.2\htdocs

แล้วลองเรียกดู ถ้าสำเร็จก็จะขึ้นหน้าข้อมูลของ php ครับ