PHP Ionic Angularjs Phonegap AJAX Javascript CSS MySQL jQuery Forum

ช่วยดู code checklogin หน่อยครับ เมื่อใส่รหัสผิดแล้วไม่ยอมเด้งกับหน้า login.html ครับ

ช่วยดู code checklogin หน่อยครับ เมื่อใส่รหัสผิดแล้วไม่ยอมเด้งกับหน้า login.html ครับ
ช่วยดู code checklogin หน่อยครับ พอดีลองใส่รหัสผิดแล้วไม่ยอมเด้งกลับหน้า login.html
<?php 
	session_start();
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
</head>
<body>
<?php 
	$user_login = (isset($_POST['user_login'])) ?$_POST['user_login'] : $_SESSION['user'];
	$pwd_login = (isset($_POST['pwd_login'])) ?$_POST['pwd_login'] : $_SESSION['passwd'];
	header("Content-type:text/html; charset=UTF-8");              
	header("Cache-Control: no-store, no-cache, must-revalidate");             
	header("Cache-Control: post-check=0, pre-check=0", false);   
	// ส่วนของการเชิ่อมต่อกับฐานข้อมูล   
	require('/include/Connectdb.php');
	require('/include/simple_html_dom.php');  
	$objDB = mysql_select_db("koh_samaesan2") or die("ไม่สามารถใช้งานฐานข้อมูลได้");  
	mysql_query("set character set utf8");   
	$strSQL = "SELECT * FROM employee WHERE username='$user_login' and password='$pwd_login' LIMIT 1";
	$result = mysql_query($strSQL);
	while ($data = mysql_fetch_array($result)){
	if($user_login = $data["username"] && $pwd_login = $data["password"]){
	
	$html = file_get_html('loading_login.html');
	echo $html;
		if($data["ID_position"]== 2){
			header("Refresh: 1; url=buy_ticket.php");

			$_SESSION["ID_emp"] = $data["ID_emp"];
			$_SESSION["first_name"] = $data["first_name"];
			$_SESSION["last_name"] = $data["last_name"];
			$idposition = $data["ID_position"];
		
		//--------------------------------------------------
			$sqlselect = "SELECT * FROM 'position'
			WHERE ID_position = '$idposition'";
			$result1 = mysql_query($sqlselect);
			$data1 = mysql_fetch_array($result1);
			$_SESSION["nameposition"] = $data1["nameposition"];
			$_SESSION["idposition"] = $idposition;
	
				session_write_close();
		} 
		else if ($data["ID_position"]== 3){
			header("Refresh: 1; url=lend_mask.php");

			$_SESSION["ID_emp"] = $data["ID_emp"];
			$_SESSION["first_name"] = $data["first_name"];
			$_SESSION["last_name"] = $data["last_name"];
			$idposition = $data["ID_position"];
			$_SESSION["idposition"] = $idposition;
		//--------------------------------------------------
			$sqlselect = "SELECT * FROM 'position'
			WHERE ID_position = '$idposition'";
			$result1 = mysql_query($sqlselect);
			$data1 = mysql_fetch_array($result1);
			$_SESSION["nameposition"] = $data1["nameposition"];
				session_write_close();
		
		}
		else if ($data["ID_position"]== 1){
				header("Refresh: 1; url=buy_ticket.php");

			$_SESSION["ID_emp"] = $data["ID_emp"];
			$_SESSION["first_name"] = $data["first_name"];
			$_SESSION["last_name"] = $data["last_name"];
			$idposition = $data["ID_position"];
			$_SESSION["idposition"] = $idposition;
		//--------------------------------------------------
			$sqlselect = "SELECT * FROM 'position'
			WHERE ID_position = '$idposition'";
			$result1 = mysql_query($sqlselect);
			$data1 = mysql_fetch_array($result1);
			$_SESSION["nameposition"] = $data1["nameposition"];
				session_write_close();
		
		}

	} 
	else {?>
		<script language="JavaScript">
		alert('กรุณากรอกข้อมูลให้ถูกต้องและครบถ้วน');
		location.href='login.html';
		</script>
		<?php
		exit();
		}

	}
?>
</body>
</html>
รบกวนช่วยชี้แนะทีครับ คำสั่งถ้าไม่ตรงตามฐานข้อมูลจะเป็นแบบนี้ครับ
else {?>
		<script language="JavaScript">
		alert('กรุณากรอกข้อมูลให้ถูกต้องและครบถ้วน');
		location.href='login.html';
		</script>
		<?php
		exit();
		}
ลองแก้มาหลายแบบแล้วครับยังค้างที่หน้า checklogin.php เป็นหน้าขาวๆ

โดย:  Chayathorn Putthong IP: 171.96.176.xxx วันที่: 01-10-2015 เวลา: 00:14:17

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ


  • ( หรือ สามารถทำการ สมัครสมาชิก และล็อกอิน ด้วย ปุ่ม Log in with Facebook ด้านล่าง )
 ความคิดเห็นที่ 4
เขียนโค้ดแปลกๆ  ถ้ากำหนด LIMIT 1 ไม่ต้องใช้ while()
การเปรียบเทียบ จะไม่ใช้คำว่า = แต่จะเป็น == เช่น if(a==b)
แต่โค้ดที่ทำก็ไม่ถูกอีก เพราะเช็คที่ sql แล้ว จึงไม่ต้องเช็คอีก
ดูเรื่องการวางลำดับโค้ด  header ถ้าคือการเปลี่ยนหน้า ก็น่าจะอยู่ด้านล่าง หลังจากคิวรี่คำสั่งที่ 2
และก็ ดูเรื่องการ กำหนดค่าซ้ำ ๆ ลองปรับให้อยู่ที่เดียว โดยรองรับและสัมพันธ์กับส่วนอื่น

<?php
$strSQL = "SELECT * FROM employee WHERE username='$user_login' and password='$pwd_login' LIMIT 1";  
$result = mysql_query($strSQL);  
if(isset($result) && mysql_num_rows($result)>0){
    $data = mysql_fetch_array($result);
    
    $_SESSION["ID_emp"] = $data["ID_emp"];  
    $_SESSION["first_name"] = $data["first_name"];  
    $_SESSION["last_name"] = $data["last_name"];  
    $idposition = $data["ID_position"];    
    $_SESSION["idposition"] = $idposition;  
    
    $html = file_get_html('loading_login.html');  
    echo $html;  
        if($data["ID_position"]== 2){  
        //--------------------------------------------------  
            $sqlselect = "SELECT * FROM 'position'  
            WHERE ID_position = '$idposition'";  
            $result1 = mysql_query($sqlselect);  
            $data1 = mysql_fetch_array($result1);  
            $_SESSION["nameposition"] = $data1["nameposition"];  
                session_write_close();  
            header("Refresh: 1; url=buy_ticket.php");  
        }   
        else if ($data["ID_position"]== 3){  
        //--------------------------------------------------  
            $sqlselect = "SELECT * FROM 'position'  
            WHERE ID_position = '$idposition'";  
            $result1 = mysql_query($sqlselect);  
            $data1 = mysql_fetch_array($result1);  
            $_SESSION["nameposition"] = $data1["nameposition"];  
                session_write_close();  
            header("Refresh: 1; url=lend_mask.php");  
        }  
        else if ($data["ID_position"]== 1){  
        //--------------------------------------------------  
            $sqlselect = "SELECT * FROM 'position'  
            WHERE ID_position = '$idposition'";  
            $result1 = mysql_query($sqlselect);  
            $data1 = mysql_fetch_array($result1);  
            $_SESSION["nameposition"] = $data1["nameposition"];  
                session_write_close();  
            header("Refresh: 1; url=buy_ticket.php");             
          
        }else{
            echo "1111";
        }
}else{
    echo "0000";
}
?>


โดย:  Ninenik IP: 180.183.142.xxx วันที่: 02-10-2015
 ความคิดเห็นที่ 3
ลองทำตามที่พี่นิคแนะนำดูแล้วครับปรากฏว่าไม่เข้าเงื่อนไขจรงิๆด้วยครับ ควรแก้ไขอย่างไรทีครับ
รบกวนทีครับ



โดย:  Chayathorn Putthong IP: 171.96.176.xxx วันที่: 02-10-2015 เวลา: 00:01:04
 ความคิดเห็นที่ 2
echo "<script>alert('ข้อมูลไม่ถูกต้อง'),window.location='login.html';</script>";


window หน้า location  หาย ไม่รู้เกี่ยวไหมนะครับ

โดย:  Wowowow IP: 58.11.68.xxx วันที่: 01-10-2015 เวลา: 16:19:50
 ความคิดเห็นที่ 1

ลองเปลี่ยนจากเรียกใช้งาน javascript เป็น echo ค่า สักค่าดู ว่าเข้าเงื่อนไข จริงหรือเปล่า เช่น
 

if(){
     echo "case 1";
}else{
     echo "case 2";

}


 



โดย:  Ninenik IP: 183.88.96.xxx วันที่: 01-10-2015