ระบบช่วย sign on ชั้นที่ 2 หลังผ่านชั้นแรก

php sign on code
php sign on code

28 มี.ค.55 มีเพื่อนในทีมพัฒนาระบบตรวจสอบสมาชิก หรือยืนยันตัวตน ขึ้นอีกระบบหนึ่ง ซึ่งใช้ user และ password ต่างไปจากชุดเดิม เป็นแบบกำหนดเฉพาะบางคนที่มีสิทธิ หากผ่านการตรวจสอบจากระบบแรก ผมจึงเขียน script ด้วย php ตรวจว่ามีค่า session ส่งมาจากระบบแรกหรือไม่ ถ้ามีและอยู่ในรายการที่กำหนด ก็จะส่งรหัสให้กับฟอร์ม เพื่อให้ผู้ใช้คลิ๊กเข้าระบบที่สอง ซึ่งระบบที่สองตรวจสอบผู้ใช้ผ่าน post โดย javascript ถูกเขียนอย่างหลวม ๆ ให้สามารถปรับแต่งต่อได้
โดยต้นแบบมาจากระบบ submit search จาก http://www.thaiall.com/search.htm

<?
session_start();
$page = "http://www.hot.com/login.php";
$user = "your username"; 
$passwd = "your password";
$u = array("101","102");
$pass = 0;
foreach ($u as $v) {
  if (isset($_SESSION["id"]) && $_SESSION["id"] == $v) { $pass = 1;}
}
if ($pass == 0) {
foreach ($u as $v) { echo $v. "<br/>"; }
echo "<br/><a href='http://www.thaiall.com'>back</a>";
exit;
}
?>
<html><head><title>admin login</title></head>
<script language="JavaScript"> 
function newpage() {
page = "<?=$page;?>";
u = document.f.username.value;
p = document.f.passwd.value;
o = window.open('blank.htm','y',"toolbar=yes");
o.document.open();
o.document.write("<body><form name='y' action='" +  page + "' method='post'>");
o.document.write("<input name='u' value=''><input name='p' value=''></form>");
o.document.close();
o.document.y.u.value = u;
o.document.y.p.value = p;
o.document.y.submit();
} 
</script>
<body>
<form name="f">
<input type=button value="click to open in new page" onclick="newpage()">
<input type=hidden name=username value="<?=$user;?>">
<input type=hidden name=passwd value="<?=$passwd;?>">
</form>
</body></html>