ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingใครก็ได้ครับอธิบายโค้ดนี้ให้หน่อยว่าคืออะไร
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: ใครก็ได้ครับอธิบายโค้ดนี้ให้หน่อยว่าคืออะไร  (อ่าน 1197 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
ิnarak26
Newbie
*

พลังน้ำใจ: 0
ออฟไลน์ ออฟไลน์

กระทู้: 43



ดูรายละเอียด
« เมื่อ: 30 กันยายน 2011, 19:27:03 »

<?PHP        
                $Login_User = $_COOKIE["LOGIN_USERNAME"];
            $Login_Pass = $_COOKIE["LOGIN_PASSWORD"];
            //*** Check Member Md5 ***//
              require_once("../../../../../include/config.in.php"); //àªç¤ Username Password
                 require_once("../../../../../include/class.sql.php");
                 $db = New database();
                 $db->connectdb ("$database[dbname]");
                 $q[ChkLogin] = "SELECT * FROM ".$table[abc_member]." where member_id = '$Login_User' ";
                 $sql[ChkLogin] = mysql_query ( $q[ChkLogin] ) or sql_error ( "db-query",mysql_error() );
                 $rows[ChkLogin] = mysql_num_rows ( $sql[ChkLogin] );
                 $arr[ChkLogin] = mysql_fetch_array( $sql[ChkLogin] );    
             $db->closedb ();
            
             $Login_PassDB_MD5 = md5($arr[ChkLogin][password]);
             if($rows[ChkLogin] == ""  or  $rows[ChkLogin] == "0"  or  $Login_PassDB_MD5 != $Login_Pass)
                         {
                           $Host = $_SERVER['DOCUMENT_ROOT'];
                           $Del = $_GET["Del"];
                              //   unlink($Host.$Del);
                           //exit();
                                }
                          else
                          {
                            $Host = $_SERVER['DOCUMENT_ROOT'];
                           $Del = $_GET["Del"];
                            unlink($Host.$Del);
                          }            
?>


<?PHP    
                $Login_AdminUser = $_COOKIE["ADMIN_USERNAME"];
            $Login_AdminPass = $_COOKIE["ADMIN_PASSWORD"];
            //*** Check Member Md5 ***//
              require_once("../../../../../include/config.in.php"); //àªç¤ Username Password Admin
                 require_once("../../../../../include/class.sql.php");
                 $db = New database();
                 $db->connectdb ("$database[dbname]");
                 $q[ChkLoginAdmin] = "SELECT * FROM ".$table[abc_config]." where admin_user = '$Login_AdminUser' ";
                 $sql[ChkLoginAdmin] = mysql_query ( $q[ChkLoginAdmin] ) or sql_error ( "db-query",mysql_error() );
                 $rows[ChkLoginAdmin] = mysql_num_rows ( $sql[ChkLoginAdmin] );
                 $arr[ChkLoginAdmin] = mysql_fetch_array( $sql[ChkLoginAdmin] );    
             $db->closedb ();
            
             $Login_PassDB_MD5 = md5($arr[ChkLoginAdmin][admin_pass]);
             if($rows[ChkLoginAdmin] == ""  or  $rows[ChkLoginAdmin] == "0"  or  $Login_PassDB_MD5 != $Login_AdminPass)
                         {
                           $Host = $_SERVER['DOCUMENT_ROOT'];
                           $Del = $_GET["Del"];
                              //   unlink($Host.$Del);
                                }            
                          else
                          {
                              $Host = $_SERVER['DOCUMENT_ROOT'];
                           $Del = $_GET["Del"];
                           unlink($Host.$Del);
                          }
?>

มันหมายถึงลบอะไรอ่ะครับจะไปทำโปรเจค งง อ่ะ
« แก้ไขครั้งสุดท้าย: 30 กันยายน 2011, 19:27:32 โดย ิnarak26 » บันทึกการเข้า
aaaaaa1
ก๊วนเสียว
*

พลังน้ำใจ: 17
ออฟไลน์ ออฟไลน์

กระทู้: 331



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 30 กันยายน 2011, 19:41:00 »

$_GET["Del"] น่าจะเป็นชื่อไฟล์ที่ต้องการลบโดยรับมากจาก GET ครับก่อนลบก็มีการเช็คว่าเป็น admin ไหมก่อน
บันทึกการเข้า

ghostbehead
สมุนแก๊งเสียว
*

พลังน้ำใจ: 35
ออฟไลน์ ออฟไลน์

กระทู้: 614



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 30 กันยายน 2011, 23:05:51 »

$_GET["Del"] น่าจะเป็นชื่อไฟล์ที่ต้องการลบโดยรับมากจาก GET ครับก่อนลบก็มีการเช็คว่าเป็น admin ไหมก่อน

เห็นด้วยครับ
 wanwan016
บันทึกการเข้า

phullop
ก๊วนเสียว
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 230



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 30 กันยายน 2011, 23:11:40 »

อ่านแล้วก็งง มีตัวแปรชื่อ HOST ด้วย แล้วค่า $_GET['DEL']; คือค่าอะไร ส่วนคำสั่ง unlink เป็นการลบไฟล์หรือลบโฟลเดอร์นะ
บันทึกการเข้า

Nomkhonwaan
คนรักเสียว
*

พลังน้ำใจ: 31
ออฟไลน์ ออฟไลน์

กระทู้: 198



ดูรายละเอียด
« ตอบ #4 เมื่อ: 30 กันยายน 2011, 23:44:45 »

<?PHP        
                $Login_User = $_COOKIE["LOGIN_USERNAME"]; //ดึง id ผู้ใช้งานจากคุกกี้
            $Login_Pass = $_COOKIE["LOGIN_PASSWORD"]; //ดึงค่าพาสเวิร์ดจากคุกกี้
            //*** Check Member Md5 ***//
              require_once("../../../../../include/config.in.php"); //àªç¤ Username Password
                 require_once("../../../../../include/class.sql.php");
                 $db = New database(); //สร้าง object จากคลาส database คาดว่าน่าจะมีการประกาศคลาส database ที่ไฟล์ config.in.php หรือไม่ก็ที่ไฟล์ class.sql.php
                 $db->connectdb ("$database[dbname]"); //สั่งเชื่อมต่อ database คอนฟิกเกี่ยวกับ database น่าจะอยู่ที่ไฟล์ config.in.php
                 $q[ChkLogin] = "SELECT * FROM ".$table[abc_member]." where member_id = '$Login_User' "; //select ข้อมูลจากตารางที่อยู่ในตัวแปร $table['abc_member'] อันนี้ต้อง echo ค่าออกมา แต่เดาว่าตารางน่าจะชื่อ member โดยมีเงื่อนไขว่า member_id ต้องเท่ากับค่าที่อยู่ในตัวแปร $Login_User
                 $sql[ChkLogin] = mysql_query ( $q[ChkLogin] ) or sql_error ( "db-query",mysql_error() ); //สั่งให้ php query จาก mysql และถ้ามี error ก็แสดง error ออกมาถ้าไม่มี ข้อมูลที่ select ได้จะถูกเก็บที่ตัวแปร $sql[ChkLohin]
                 $rows[ChkLogin] = mysql_num_rows ( $sql[ChkLogin] ); //นับจำนวนแถวของข้อมูลที่ select ได้ สมมติผม select ออกมาได้ดังนี้
//id|username|password
//01|11111111|22222222
//02|33333333|44444444
//mysql_num_rows ก็จะ return 2 ออกมาเพราะผม select ได้ 2 rows

                 $arr[ChkLogin] = mysql_fetch_array( $sql[ChkLogin] );  //fetch ข้อมูลในอาเรย์ออกมา จากตรงนี้ถ้าข้อมูลมีมากกว่า  1 rows มันก็จะเอา มาแค่ row แรกครับเพราะสั่ง fetch แค่ทีเดียว fetch ออกมาก็จะได้ array ของข้อมูลมาเก็บไว้ที่ตัวแปร $arr[ChkLogin]  
             $db->closedb (); //ตัดการเชื่อมต่อ database
            
             $Login_PassDB_MD5 = md5($arr[ChkLogin][password]); //เอารหัสผ่านที่ select จาก database มาเข้ารหัส แบบ md5
             if($rows[ChkLogin] == ""  or  $rows[ChkLogin] == "0"  or  $Login_PassDB_MD5 != $Login_Pass) //ตรวจสอบว่า ข้อมูลที่ select ได้เป็นค่า NULL หรือเปล่า และถ้า รหัสผ่านจากคุกกี้ไม่เหมือนกับรหัสผ่านที่ดึงได้จาก database ก็จะเข้า if
                         {
                           $Host = $_SERVER['DOCUMENT_ROOT']; //$_SERVER['DOCUMENT_ROOT'] คือค่าของ root directory path ของเว็บ เอาใส่ไว้ที่ตัวแปร $Host
                           $Del = $_GET["Del"]; //เอาข้อมูล GET จาก url ใส่ไว้ที่ $Del ลักษณะของข้อมูลจะส่งมากับ URL แบบนี้ครับ ?Del=
                              //   unlink($Host.$Del); //unlink เอาไว้ลบไฟล์บนเซิรฟครับ แต่ในโปรแรกมนี้ comment ไว้
                           //exit();
                                }
                          else
                          {
                            $Host = $_SERVER['DOCUMENT_ROOT'];
                           $Del = $_GET["Del"];
                            unlink($Host.$Del); //ลบไฟล์ที่ชื่อ ตามตัวแปร $Del ครับ path ของไฟล์ก็จะอยู่ที่ document root เลย เช่น /var/www/xxx.com/public_html/{ไฟล์}
                          }            
?>


<?PHP    
//เหมือนข้างบนเลยครับแต่เป็นของ admin user

                $Login_AdminUser = $_COOKIE["ADMIN_USERNAME"];
            $Login_AdminPass = $_COOKIE["ADMIN_PASSWORD"];
            //*** Check Member Md5 ***//
              require_once("../../../../../include/config.in.php"); //àªç¤ Username Password Admin
                 require_once("../../../../../include/class.sql.php");
                 $db = New database();
                 $db->connectdb ("$database[dbname]");
                 $q[ChkLoginAdmin] = "SELECT * FROM ".$table[abc_config]." where admin_user = '$Login_AdminUser' ";
                 $sql[ChkLoginAdmin] = mysql_query ( $q[ChkLoginAdmin] ) or sql_error ( "db-query",mysql_error() );
                 $rows[ChkLoginAdmin] = mysql_num_rows ( $sql[ChkLoginAdmin] );
                 $arr[ChkLoginAdmin] = mysql_fetch_array( $sql[ChkLoginAdmin] );    
             $db->closedb ();
            
             $Login_PassDB_MD5 = md5($arr[ChkLoginAdmin][admin_pass]);
             if($rows[ChkLoginAdmin] == ""  or  $rows[ChkLoginAdmin] == "0"  or  $Login_PassDB_MD5 != $Login_AdminPass)
                         {
                           $Host = $_SERVER['DOCUMENT_ROOT'];
                           $Del = $_GET["Del"];
                              //   unlink($Host.$Del);
                                }            
                          else
                          {
                              $Host = $_SERVER['DOCUMENT_ROOT'];
                           $Del = $_GET["Del"];
                           unlink($Host.$Del);
                          }
?>

มันหมายถึงลบอะไรอ่ะครับจะไปทำโปรเจค งง อ่ะ
Tongue คงประมาณนี้มั้งครับ
บันทึกการเข้า
ิnarak26
Newbie
*

พลังน้ำใจ: 0
ออฟไลน์ ออฟไลน์

กระทู้: 43



ดูรายละเอียด
« ตอบ #5 เมื่อ: 01 ตุลาคม 2011, 00:51:20 »

ขอบคุณทุกคนครับ ได้ประโยชน์มากมายเลยครับ
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์