HOME > ASP > ASP Forum > *****ผู้รู้ช่วยตอบด่วนครับ **** concept details.asp ผมต้องการทำ form โดยใช้ checkbox แบบไม่จำกัด Element ใน Array (เดิมจำกัดไว้ 25 )
*****ผู้รู้ช่วยตอบด่วนครับ **** concept details.asp ผมต้องการทำ form โดยใช้ checkbox แบบไม่จำกัด Element ใน Array (เดิมจำกัดไว้ 25 )
<%'################ ถ้ามีการค้นหา ################
IF search <> "" Then
set ObjDB = Server.CreateObject("ADODB.Connection")
ObjDB.Open "PILT_ODBC","prod","prod"
sql_search="SELECT ALL PROD.GROUP_MAPIC.GROUP_NAME,PROD.GROUP_MAPIC.GROUP_NO FROM PROD.GROUP_MAPIC WHERE PROD.GROUP_MAPIC.GROUP_NAME LIKE '"&search&"%' ORDER BY PROD.GROUP_MAPIC.GROUP_NAME ASC"
Set ObjRSsearch=Server.CreateObject("ADODB.Recordset")
Set ObjRSsearch = ObjDB.Execute (sql_search)
%>
<br>
<hr><div align="center"><b><FONT size="4" color="#0066FF">REPORT</FONT></b></div><br>
<%
if ObjRSsearch.Eof and ObjRSsearch.bof then
Response.Write "<div align='center'><H3><font color ='#FF0000'> No Data ไม่มีข้อมูลครับ</font></H3></div>"
If Bg="#C2EBFE"Then Bg="white" Else Bg="#C2EBFE" End If
%>
<Tr Bgcolor=<%=Bg%> Valign=Top>
<%
response.write("<td valign='top' align='center'><small> " &ObjRSsearch("GROUP_NAME")& "</small> </td>")
'response.write("<td valign='top' align='center'><small> " &ObjRSsearch("U_COMMENT")& "</small> </td>")
'response.write("<td valign='top' align='center'><small> " &ObjRSsearch("STATUS")& "</small> </td>")
%>
<td valign="top" align="center"><small><A HREF="details.asp?groupno=<%=ObjRSsearch("GROUP_NO").value%>">Set_Permission</A></small></td>
<%
response.write("</tr>")
ObjRSsearch.MoveNext
LOOP
End If
'ปิดการติดต่อฐานข้อมูล
if ObjRSsearch.Eof then
ObjRSsearch.Close
ObjDB.Close
End If
End If
'############### จบส่วนแสดงผลค้นหา #########################
%>
<%
'############### ส่วนแสดง Menu ทั้งหมด #######################
IF group_no <> "" Then
set ObjDB = Server.CreateObject("ADODB.Connection")
ObjDB.Open "PILT_ODBC","prod","prod"
sql_menu_total= "SELECT ALL MENU_NO,MENU_NAME FROM MENU_MAPIC ORDER BY MENU_NAME ASC"
Set ObjRSmenu_total=Server.CreateObject("ADODB.Recordset")
Set ObjRSmenu_total = ObjDB.Execute (sql_menu_total)
'=================แสดงชื่อ User ที่เลือก =======================
sql_sel_group= "SELECT * FROM GROUP_MAPIC WHERE GROUP_NO='"&group_no&"' "
Set ObjRSsel_group=Server.CreateObject("ADODB.Recordset")
Set ObjRSsel_group = ObjDB.Execute (sql_sel_group)
If NOT ObjRSsel_group.EOF Then
'============== ส่วนแสดง Permission =========================
sql_menu_per="SELECT ALL PROD.GROUP_MAPIC.GROUP_NO, PROD.GROUP_MAPIC.GROUP_NAME, PROD.MENU_MAPIC.MENU_NO, PROD.MENU_MAPIC.MENU_NAME, PROD.MENU_MAPIC.LINK, PROD.MENU_MAPIC.M_COMMENT FROM PROD.ASSIGN_GROUP1, PROD.MENU_MAPIC, PROD.GROUP_MAPIC WHERE ((PROD.GROUP_MAPIC.GROUP_NO=PROD.ASSIGN_GROUP1.GROUP_NO) AND PROD.ASSIGN_GROUP1.GROUP_NO='"&group_no&"' AND (PROD.MENU_MAPIC.MENU_NO=PROD.ASSIGN_GROUP1.MENU_NO)) ORDER BY PROD.GROUP_MAPIC.GROUP_NAME ASC, PROD.MENU_MAPIC.MENU_NAME ASC"
Set ObjRSmenu_per=Server.CreateObject("ADODB.Recordset")
'=========================================================
%> <br>
<hr><div align="center"><b><FONT size="4" color="#0066FF">Set Permission for </FONT></b>
<b><FONT size="4" color="#990099"> <%=ObjRSsel_group("GROUP_NAME")%>
<%End If'จบแสดงชื่อ Group ที่เลือก%></FONT></b>
<form name="f_menu_per" method="post" action="assignmenu.asp">
<table width="500" border="1" align="center">
<tr bgcolor="#99CCFF">
<td width="78">Permission</td>
<td width="406"><div align="center">Menu Name</div></td>
</tr>
<%
If ObjRSmenu_total.EOF and ObjRSmenu_total.BOF Then
'======
Else
%>
<input type="hidden" name="group_no" value="<%=ObjRSsel_group("GROUP_NO")%>">
<%
'############### วนลูปแสดง Menu ทั้งหมด ########################
do while not ObjRSmenu_total.EOF
If Bg="#C2EBFE"Then Bg="white" Else Bg="#C2EBFE" End If
%>
<Tr Bgcolor=<%=Bg%> Valign=Top>
<%
'===============วนลูปเปรียบเทียบ Menu ที่มีสิทธิ ====================
a=0 'เคลียร์
Set ObjRSmenu_per = ObjDB.Execute (sql_menu_per)
do while not ObjRSmenu_per.EOF
If Cstr(ObjRSmenu_total("MENU_NO"))=Cstr(ObjRSmenu_per("MENU_NO")) Then
a=1
%>
<td width="78"><center><input type="checkbox" name="menu_chk<%=i%>" value="<%=ObjRSmenu_total("MENU_NO")%>" checked></center></td>
<td width="406"><div align="center"><%=ObjRSmenu_total("MENU_NAME") %></div></td>
<%
End If
ObjRSmenu_per.MoveNext
LOOP
'===========================================================
%>
<% If a <>1 Then %>
<td width='78'><center><input type="checkbox" name="menu_chk<%=i%>" value="<%=ObjRSmenu_total("MENU_NO")%>"></center></td>
<%
Response.write("<td width='406'><div align='center'>" &ObjRSmenu_total("MENU_NAME")& "</div></td>")
Response.write("</tr>")
Response.write(menu_chk(i))
End If
i=i+1
ObjRSmenu_total.MoveNext
LOOP
End If
%>
<input type="hidden" name="i" value="<%=i %>">
<%
'==========เช็คว่า User มีค่าใน Table Assign เหรอยัง =======
'For a = 0 to Ubound(menu_chk)
Set ObjRSmenu_per = ObjDB.Execute (sql_menu_per)
If ObjRSmenu_per.EOF Then
Response.write("</table>")
Response.write("</table>")
Response.write("<P><center><input type='submit' name='f_submit' value='INSERT'></center></P>")
Response.write("</form>")
Else
Response.write("</table>")
Response.write("</table>")
Response.write("<P><center><input type='submit' name='f_submit' value='UPDATE'></center></P>")
Response.write("</form>")
'End If
End If
'=============================================
if ObjRSmenu_total.EOF then
ObjRSmenu_total.Close
ObjDB.Close
End If
'################# Count MENU #########################
Set ObjDB = Server.CreateObject("ADODB.Connection")
ObjDB.Open "PILT_ODBC","prod","prod"
Set ObjRScount_nenu=Server.CreateObject("ADODB.Recordset")
sql_count_menu="SELECT count(MENU_NAME) FROM MENU_MAPIC"
Set ObjRScount_nenu = ObjDB.Execute (sql_count_menu)
menu_total=ObjRScount_nenu(0)
Set ObjDB = Server.CreateObject("ADODB.Connection")
ObjDB.Open "PILT_ODBC","prod","prod"
Set ObjRSinsert=Server.CreateObject("ADODB.Recordset")
dim j
for j=0 to i
Select Case j
case "0"
sql_insert0=" INSERT INTO ASSIGN_GROUP1( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f0&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert0)
case "1"
sql_insert1=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f1&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert1)
case "2"
sql_insert2=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f2&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert2)
case "3"
sql_insert3=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f3&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert3)
case "4"
sql_insert4=" INSERT INTO ASSIGN_GROUP1( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f4&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert4)
case "5"
sql_insert5=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f5&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert5)
case "6"
sql_insert6=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f6&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert6)
case "7"
sql_insert7=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f7&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert7)
case "8"
sql_insert8=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f8&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert8)
case "9"
sql_insert9=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f9&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert9)
case "10"
sql_insert10=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f10&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert10)
case "11"
sql_insert11=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f11&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert11)
case "12"
sql_insert12=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f12&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert12)
case "13"
sql_insert13=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f13&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert13)
case "14"
sql_insert14=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f14&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert14)
case "15"
sql_insert15=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f15&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert15)
case "16"
sql_insert16=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f16&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert16)
case "17"
sql_insert17=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f17&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert17)
case "18"
sql_insert18=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f18&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert18)
case "19"
sql_insert19=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f19&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert19)
case "20"
sql_insert20=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f20&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert20)
case "21"
sql_insert21=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f21&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert21)
case "22"
sql_insert22=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f22&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert22)
case "23"
sql_insert23=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f23&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert23)
case "24"
sql_insert24=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f24&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert24)
case "25"
sql_insert25=" INSERT INTO ASSIGN_GROUP1 ( GROUP_NO,MENU_NO ) values ('"&group_no_f&"','"&menu_chk_f25&" ') "
Set ObjRSinsert = ObjDB.Execute (sql_insert25)
End Select
Next