<%
' Criteria = " WHERE [LIKE] <> '0' "
'if Request("Submit") = "Search" then
' if request.form("[LIKE]") <> "" then
' Criteria = Criteria & " AND [LIKE] = '" & request.form("[LIKE]") & "'"
' end if
' if request.form("date") <> "" then
' Criteria = Criteria & " AND date = '" & request.form("date") & "'"
'end if
' if request.form("id_customer") <> "" then
' Criteria = Criteria & " AND id_customer = " & request.form("id_customer")
'end if
'
'end if
worklike = request.Form("[LIKE]")
%>
<HTML>
<HEAD>
<TITLE> Database Management System</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=windows-874">
</HEAD>
<BODY>
<form name="send" action="select.asp" method="post" >
<table width="52%" border="1" align="center" cellpadding="0" cellspacing="0">
<tr>
<td colspan="2"><div align="center">ค้นหา </div></td>
</tr>
<tr>
<td width="34%"><span lang="th">ความถนัด</span>:</td>
<td width="66%"><label>
<input name="[LIKE]" type="text" id="[LIKE]">
</label></td>
</tr>
<tr>
<td> </td>
<td><label>
<input type="submit" name="Submit" value="Search">
<input type="submit" name="Submit2" value="Reset">
</label></td>
</tr>
</table>
</form>
<BR></TD>
<br>
<%
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("test_project_update.mdb")
'Sql="Select EMPLOYEE. E_MAIL,EMPLOYEE.TEL,
extra.*
from EMPLOYEE, extra" & Criteria
Sql="Select EMPLOYEE. E_MAIL,EMPLOYEE.TEL,
extra.*
from EMPLOYEE, extra
where [like] like '%" & worklike & "%'"
Set RS =Server.CreateObject("ADODB.Recordset")
RS.open Sql,Conn,1,3
if RS.recordcount <> 0 then
RS.MoveFirst
end if
%>
<TABLE border="1">
<TR>
<TD> <span lang="th">รหัสความถนัด</span> </TD>
<TD> <span lang="th">รหัสพนักงาน</span> </TD>
<TD> <span lang="th">ชื่อ</span> </TD>
<TD> <span lang="th">นามสกุล</span> </TD>
<TD> <span lang="th"> E_MAIL</span> </TD>
<TD> <span lang="th">TEL</span> </TD>
<TD> <span lang="th">ความถนัด</span> </TD>
</TR>
<%
if RS.recordcount <> 0 then
Do While Not RS.EOF
%>
<TR>
<TD><%= RS("ID_extra")%></TD>
<TD><%= RS("EMP_ID")%></TD>
<TD><%= RS("NAME_THAI")%></TD>
<TD><%= RS("SURENAME_THAI")%></TD>
<TD><%= RS("E_MAIL")%></TD>
<TD><%= RS("TEL")%></TD>
<TD><%= RS("LIKE")%></TD>
</TR>
<%
RS.MoveNext
Loop
end if
%>
</TABLE>
<html>
<body>
</body>
</html>
<p> </p>
<%
rs.close
conn.close
%>
</BODY>
</HTML>
---------------------------------------------------------------------------
Error Type:
Microsoft VBScript compilation (0x800A03F2)
Expected identifier
/project/select.asp, line 54, column 6
extra.*
-----^
Tag : - - - -
Date :
17 พ.ย. 2550 22:40:31
By :
p
View :
1465
Reply :
2
No. 1
Guest
ลองเปลี่ยน sql ใหม่นะครับ
Sql="Select EMPLOYEE. E_MAIL,EMPLOYEE.TEL,
extra.*
from EMPLOYEE, extra
where [extra.like] like '%" & worklike & "%'"
ผมเข้าใจว่า like เป็น field ที่อยู่ใน table ชื่อ extra
การ join table ดังกล่าว เวลาคุณใส่เงื่อนไขอาไรก็แล้วแต่ ในกรณีคุณใช้ where
คุณต้องบอกด้วยว่ามันอยู่ใน table ไหน
Date :
18 พ.ย. 2550 14:47:59
By :
sys
No. 2
Guest
หลักการ มันก็คือว่า ถ้าเป็นการ join table คุณต้องบอกด้วยว่า field นั้นคุณเอามาจาก table อาไร
ถ้ายังไม่หายอีก ก็ ตอน select table extra ก็ให้ระบุเลยครับว่าจาเอา field อาไรบ้าง เช่น
extra.like แทนทำว่า extra.*
แต่ถ้าจาให้ปลอดภัย ควรเปลี่ยนชื่อ field จาก like เป็นอย่างอื่นครับ เพราะมันซ้ำกับคำสั่งของ sql