© Khmer Angkor Academy - sophearithput168

Cookie

Cookie នៅ​ក្នុង PHP

Cookie គឺ​ជា​ឯកសារ​តូច​ដែល server បញ្ជូន​ទៅ browser របស់​អ្នក​ប្រើប្រាស់ ហើយ​រក្សា​ទុក​នៅ​កុំព្យូទ័រ​របស់​ពួកគេ។

🍪 Cookie គឺ​អ្វី?

Cookie ត្រូវ​បាន​ប្រើ​ដើម្បី​រក្សា​ព័ត៌មាន​អំពី​អ្នក​ប្រើប្រាស់​រវាង​ការ​ចូល​មើល​គេហទំព័រ​ផ្សេងៗ​គ្នា។

លក្ខណៈ ពិពណ៌នា
រក្សា​ទុក​នៅ Browser របស់​អ្នក​ប្រើប្រាស់
ទំហំ​អតិបរមា 4KB (4096 bytes)
រយៈពេល អាច​កំណត់​បាន (លុប​ពេល​បិទ browser ឬ​តាម​ពេល​កំណត់)
សុវត្ថិភាព អាច​មើល​ឃើញ​និង​កែប្រែ​បាន​ដោយ​អ្នក​ប្រើប្រាស់

📝 បង្កើត Cookie

ប្រើ​មុខងារ setcookie() ដើម្បី​បង្កើត cookie:

setcookie(name, value, expire, path, domain, secure, httponly);
ប៉ារ៉ាម៉ែត្រ ពិពណ៌នា ឧទាហរណ៍
name ឈ្មោះ cookie (ត្រូវការ) "username"
value តម្លៃ cookie "Sokha"
expire ពេល​ផុតកំណត់ (timestamp) time() + 3600
path ផ្លូវ​លើ server "/" (ទាំង​អស់)
domain ដែន​ដែល cookie ដំណើរការ "example.com"
secure បញ្ជូន​តាម HTTPS តែ​ប៉ុណ្ណោះ true/false
httponly ចូល​ដំណើរការ​តាម HTTP តែ​ប៉ុណ្ណោះ true/false
PHP Code

📖 អាន Cookie

Cookie ត្រូវ​បាន​រក្សា​ទុក​ក្នុង $_COOKIE superglobal array:

PHP Code

🔄 កែប្រែ Cookie

ដើម្បី​កែប្រែ cookie, គ្រាន់តែ​បង្កើត​វា​ឡើងវិញ​ដោយ​ប្រើ​ឈ្មោះ​ដូច​គ្នា:

PHP Code

🗑️ លុប Cookie

ដើម្បី​លុប cookie, កំណត់​ពេល​ផុតកំណត់​ជា​អតីតកាល:

PHP Code

⏰ ពេលវេលា​ផុតកំណត់

រយៈពេល កូដ ពន្យល់
1 ម៉ោង time() + 3600 3600 វិនាទី = 1 ម៉ោង
1 ថ្ងៃ time() + 86400 86400 វិនាទី = 24 ម៉ោង
1 សប្តាហ៍ time() + 604800 7 ថ្ងៃ
30 ថ្ងៃ time() + (30 * 24 * 3600) 1 ខែ
1 ឆ្នាំ time() + (365 * 24 * 3600) 365 ថ្ងៃ
Session Cookie 0 ឬ​មិន​កំណត់ លុប​ពេល​បិទ browser
PHP Code

🔍 ពិនិត្យ​ថា Cookie មាន​ឬ​អត់

PHP Code

🎯 ឧទាហរណ៍​ជាក់ស្តែង: ចងចាំ​ឈ្មោះ​អ្នក​ប្រើប្រាស់

PHP Code

🔐 សុវត្ថិភាព Cookie

បញ្ហា ដំណោះស្រាយ
អាច​មើល​ឃើញ​បាន កុំ​រក្សា​ព័ត៌មាន​សម្ងាត់​ក្នុង cookie
XSS Attack ប្រើ httponly flag
ចាប់​បាន​លើ​បណ្តាញ ប្រើ secure flag (HTTPS)
ទំហំ​កំណត់ រក្សា​ទិន្នន័យ​តិច​តួច (< 4KB)
PHP Code

📊 Cookie vs Session

លក្ខណៈ Cookie Session
រក្សា​ទុក​នៅ Browser (client-side) Server (server-side)
ទំហំ 4KB គ្មាន​កំណត់
សុវត្ថិភាព តិច (អាច​មើល/កែ​បាន) ខ្ពស់ (server-side)
រយៈពេល អាច​កំណត់​បាន លុប​ពេល​បិទ browser
ប្រើ​សម្រាប់ ចងចាំ​ការ​កំណត់ ទិន្នន័យ​ sensitive (login)

⚠️ សំខាន់: setcookie() ត្រូវ​ហៅ​មុន​ការ​បង្ហាញ HTML ណាមួយ! ដូចគ្នា​នឹង header()។

💡 Tips: ប្រើ cookie សម្រាប់​រក្សា​ការ​កំណត់​អ្នក​ប្រើប្រាស់ (theme, language) និង session សម្រាប់​ទិន្នន័យ​ sensitive (login info)។