问题传递函数参数vbscript
|
我对vbscript有一点问题
我已经声明了一些函数,该函数通过将sql查询的结果集传递给参数,而问题是函数showData像对象一样接受参数,而不像结果集那样
function get_count(conn)
dim query, size
Set query = Server.CreateObject(\"ADODB.Recordset\")
set query = conn.Execute(\"select count(*) as size from doctor\")
size = query.Fields(\"size\")
get_count = size
end function
function get_rows_from_to(from,size,conn)
dim result
Set result = Server.CreateObject(\"ADODB.Recordset\")
set result = conn.Execute(\"SELECT name, surname,family,egn,citizenship FROM doctor limit \"&from&\",\"&size&\"\")
get_rows_from_to = result
end function
Sub showData(objRS)
dim isEven
isEven = false
Response.Write \"<table>\"
Response.Write \"<tr>\"
Response.Write \"<th >Име</th><th >Презиме</th><th >Фамилия</th><th >ЕГН</th><th >Гражданство</td>\"
Response.Write \"</tr>\"
While Not objRS.EOF
Response.Write \"<tr>\"
if isEven then
Response.Write \"<td style = \'background-color :#e9ebf2\'>\"&objRS.Fields(\"name\")&\"</td>\"&_
\"<td style = \'background-color :#e9ebf2\'>\"&objRS.Fields(\"surname\")&\"</td>\"&_
\"<td style = \'background-color :#e9ebf2\'>\"&objRS.Fields(\"family\")&\"</td>\"&_
\"<td style = \'background-color :#e9ebf2\'>\"&objRS.Fields(\"egn\")&\"</td>\"&_
\"<td style = \'background-color :#e9ebf2\'>\"&objRS.Fields(\"citizenship\")&\"</td>\"
isEven = false
else
Response.Write \"<td>\"&objRS.Fields(\"name\")&\"</td><td>\"&objRS.Fields(\"surname\")&\"</td><td>\"&objRS.Fields(\"family\")&\"</td><td>\"&objRS.Fields(\"egn\")&\"</td><td>\"&objRS.Fields(\"citizenship\")&\"</td>\"
isEven = true
end if
Response.Write \"</tr>\"
objRS.MoveNext
Wend
Response.Write \"</table>\"
objRS.Close
end sub
const ROWS_PER_PAGE = 10
Dim sConnection, conn , result,pages,selPage,from,lenght,pos,size
from = 0
lenght = 10
pos = 1
size = 0
sConnection = \"DRIVER={MySQL ODBC 5.1 Driver}; SERVER=localhost; DATABASE=docunion; UID=root;PASSWORD=root; OPTION=3\"
Set conn = Server.CreateObject(\"ADODB.Connection\")
Set result = Server.CreateObject(\"ADODB.Recordset\")
conn.Open sConnection
size = get_count (conn)
size = CInt(size)
if size > 0 then
pages = size / 10
lenght = (ROWS_PER_PAGE*pos)
set result = get_rows_from_to(from,lenght,conn)
from = lenght + 1
pos = pos + 1
showData(result)
else
Set result = Nothing
conn.Close
Set conn = Nothing
end if
谁能告诉我这里的问题在哪里。我是vbscript的新手。这是带有对象objRS的函数showData中的错误
Microsoft VBScript runtime error \'800a01b6\'
Object doesn\'t support this property or method: \'EOF\'
/index.asp, line 57
没有找到相关结果
已邀请:
1 个回复
夏瓤跋棘
其他一些提示: 在使用函数之前,无需声明它们。您可以将所有函数声明放在脚本的末尾,并将主脚本主体放在顶部。 这是不必要的冗余:
相当于这个
已经返回ADODB.RecordSet。之前通过create7ѭ创建一个空白是没有意义的。实际上,您所有的
语系都是多余的。 在函数中为返回值创建单独的变量没有任何意义。该函数是其返回值:
最后两个提示: 始终使用
。 始终在输出到页面的任何数据上使用ѭ11。这比所有其他技巧都更为重要。