[PHP] Session file và Ajax request

Kịch bản:

– Khi user truy cập vào 1 page, 1 phần content được tải về sau thông qua Ajax.
– Content này thường phải mất vài 3 giây mới có thể xử lý xong, chuyện này cũng không có gì vì đã làm hiệu ứng loading và cũng chỉ 1 phần content của page thôi.

Vấn đề:

– Trong thời gian chờ respond từ ajax request, user dù có click link trên page (ví dụ: 1 menu nào đó), thì trình duyệt không xử lý gì cả, chỉ cho đến khi có dữ liệu từ server trả về, lệnh click mới có thể thực thi.

Lưu ý: Đang nói về truy cập cùng 1 server nhé. Continue reading “[PHP] Session file và Ajax request”

Giải quyết vấn đề truy xuất các file/folder có tên Unicode trong Windows

PHP gặp vấn đề trong việc xử lý các file / folder trên Windows có sử dụng tên chứa các ký tự không trong bảng chữ cái Latin (ví dụ: tiếng việt, tiếng trung, tiếng hàn…)

Tất cả các hàm như filemtime(), fopen() v.v… đều báo lỗi nếu xử lý đến các file này (Python 2.7 cũng tương tự, lên bản 3 đã được giải quyết). Sau khi thử rất nhiều thư viện và hướng dẫn trên mạng, mình thấy cách tối ưu nhất để giải quyết vấn đề này là sử dụng extension kenjiuno/php-wfio Continue reading “Giải quyết vấn đề truy xuất các file/folder có tên Unicode trong Windows”

PHP Code: Remote reboot TP-Link Router / Wireless

Lười phải vào web để reboot router/wireles, function dưới đây giúp làm chuyện đó trong 1 nốt nhạc. Mã này hỗ trợ hầu như tất cả các router của TP-LINK vì có trang quản trị giống nhau.

Continue reading “PHP Code: Remote reboot TP-Link Router / Wireless”

Config info: Turn off SSL verify of fabpot/goutte

I use latest version support PHP 5.4, version: 2.0.4

To turn off SSL verify when crawler a https website:

More information: https://packagist.org/packages/fabpot/goutte#v2.0.4

How can I prevent SQL-injection in PHP?

If user input is inserted without modification into an SQL query, then the application becomes vulnerable to SQL injection, like in the following example:

That’s because the user can input something like value'); DROP TABLE table;--, and the query becomes:

INSERT INTO table (column) VALUES(‘value’); DROP TABLE table;–‘)

What can be done to prevent this from happening? Continue reading “How can I prevent SQL-injection in PHP?”

Inroduction to Writing PHP Command-Line (CLI) Scripts

Added by on July 9th, 2010, filed under PHP, Web Development

In this tutorial, I will show you how to get started with writing command-line interface (CLI) scripts using PHP. Here are a few reasons why you might want to write a CLI application in PHP:

  • You want to write a tool for admin-ing your server, but you’re more comfortable using PHP
  • You don’t need to output any content to a public-facing web page

Continue reading “Inroduction to Writing PHP Command-Line (CLI) Scripts”

Are Static Methods/Variables bad practice?

Static methods and variables. Are they bad practice?

In short: Yes. There are many disadvantages and static methods should almost never be used.

Static methods allow procedural/functional code to be shoe-horned into an Object Oriented world. Using static methods and variables breaks a lot of the power available to Object-Oriented code.

Why are they used?

Before any analysis on the benefitis or problems of static methods, the question must be asked: “Why are static methods used?” Continue reading “Are Static Methods/Variables bad practice?”