mean
61
ตรง
$lock = “lockkey”;
$ver = “lockkey”;
เป็นการเขียนไว้ เฉยๆ เองครับ คือป้องกัน คนส่งค่าตัวแปลมาจาก url
ถึงอย่างไรเสีย เช่นหาก url มาเป็น index.php?lock=xxxx จริง
มันก็ถูก set ใหม่เป็น lockkey อยู่ดีครับ
แล้วจึง แสดงผลออกมา
หากเรียก inc/page1.php มันไม่มีตัวแปล lock ก็ else ไป จริงๆ
แต่ไม่แนะนำให้ใช้นะครับ เพราะว่า หากมีเรียกไฟล์ inc/page1.php แล้วส่งตัวแปล ?ver=aa&lock=bb ก็เรียกดูได้อยู่ดี
หากจะเขียนให้ถูกหลัก ไม่ให้เรียก inc/page1.php โดยตรง อาจเขียนเป็น
if($_SERVER[‘PHP_SELF’]!="/index.php"){
echo “คุณไม่สามารถเรียก page นี้ได้โดยตรง”;
exit();
}
แบบนี้ชัวกว่าแน่นอนครับ
system
63
ผมคิดว่า htaccess เป็นวิธีที่ดีสุดครับ หรือไม่ก็ให้มีการ Loop check pararmeter get+post ว่ามี .php ,etc
register_global จะถูกยกเลิกใน php5.3.x และมีค่าเป็น off ไม่สามารถตั้งค่าให้เปิดได้ใน .htaccess คาดว่าจะ release ภายใน 3 เดือน ตอนนี้เป็น RC1 อยู่ เตรียมตัวรับงานใหญ่อีกระลอกได้แล้วครับ ลูกค้าต้อง update program สถานเดียวถึงจะใช้งาน 5.3.x ได้
ดีเหมือนกันครับยกเลิกใน Php ไปเลย จริงๆมันไม่ควรทำแบบนั้นแต่แรกแล้ว
add210
67
ใช้ php.ini ก็ไม่ได้แล้วรึเปล่าครับ มีลูกค้าเจ้านึง โค๊ดเอง ต้องแก้เยอะเหมือนกัน
icez
68
register globals จะถูกปิดเป็นการถาวรน่ะครับ
วิธีแก้เบื้องต้น ใช้คำสั่ง extract เอาก็ได้
แต่เอาจริงๆ ไล่แก้ script ให้หมดดีกว่า
add210
69
งั้นสงสัยต้องแยกกัน ตัวไหนทำมาไม่รองรับ ก็อยู่ SV เก่า
อื้อหือ เก่งๆ กันทั้งนั้น