这个xml的文件 ,搜索数据库换种方式 就出错,,看看
<% @language="VBScript" @codepage="65001"%> <%
'开启显式变量声明
Option Explicit
'设置输出类型
Response.contentType="text/xml"
'定义三个变量,conn(Connection对象)、connstr(ConnectionString)、sql(一个SQL语句)
dim conn,connstr,rs,sql,i,pcate
pcate=request.QueryString("pcate")
'定义ConnectionString的值
i=1
connstr="provider=Microsoft.Jet.OLEDB.4.0;data source="&Server.MapPath("Data/#cd0274fddf536630.mdb")&";"
'建立服务器连接对象
set conn=Server.CreateObject("ADODB.Connection")
'建立数据集对象
set rs=Server.CreateObject("ADODB.RecordSet")
'打开数据连接
conn.open connstr
'对数据库执行操作的sql语句,下节会详细介绍。本句的意思是到word数据表内按id字段值的升序取出前10个word,chinese字段的值。值被附加到数据集对象上被当作数据集的一个属性。
if pcate<>"" then
[bo]sql="select distinct photoContent from Weed_Photo where photoCate="&pcate&" order by id desc"[/bo]
我想选择不同名的数据 ,但用上面这句话就显示不出来
用下面的就会显示所有数据。不知这种情况该怎么搜索。。。。
'sql="select photoContent from Weed_Photo where photoCate="&pcate&" order by id desc"
'response.write(sql)
'response.end
else
sql="select top 50 [id],[photoThumbSrc],[photoSrc],[photoCate],[photoContent] from [Weed_Photo] order by id desc"
response.end
end if
'游标类型和锁定类型都设置为1,这是一个只能向前的只读行为,读取速度最快
rs.open sql,conn,1,1
Response.Write("<?xml version='1.0' encoding='utf-8'?><photos>")
'进行do while循环,条件循环到符合条件的最后一项
do while not rs.eof
'这是修改的部分,使输出的文件能够被Flash中的LoadVars对象识别。
Response.Write("<plist cate='"&rs("photoCate")&"' num='"&i&"' id='"&rs("id")&"'><pthumb>"&rs("photoThumbSrc")&"</pthumb><pbig>"&rs("photoSrc")&"</pbig><pinfo><![CDATA["&rs("photoContent"))&"]]></pinfo></plist>"
'记录下移
rs.movenext
i=i+1
'与do while呼应的loop方法,为主循环体
loop
Response.Write("</photos>")
'将数据集对象关闭
rs.close
'将数据库连接关闭
conn.close
'释放数据集资源
set rs=nothing
'释放数据库连接资源
set conn=nothing
%>
[[it] 本帖最后由 dhdhzzw 于 2008-11-14 14:21 编辑 [/it]]