分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
我在个人blog数据库的blog_content(记录日志的)表里加了一个log_pwd的字段,用来储存日志的密码。
现在在首页里需要判断日志log_pwd字段的值是否为空,若为空就直接进入日志页面,非空则提示要输入密码以后才能进入。
由于日志的ID是自动增加的,应该怎样动态读取数据库里每一篇日志的密码呢?
谢谢了
解析:
<!--日志列表-->
<%
Set rs= ServerCreateObject("ADODBRecordset")
rsopen"select from blog_content",conn,1,1
if rseof and rsbof then
responsewrite ("没有数据")
else
responsewrite ("<table>")
for i=1 to 50 '打开数据从1到50循环'
responsewrite ("<tr><td><a href=日志显示页面id=")&rs("log_id")&(">")&rs("日志字段名")&("</a></td><tr>") '这句话显示日志的题目链接'
rsmovenext
if rseof then exit for
next
responsewrite ("</table>")
end if
rsclose:set rs=nothing
%>
<!--日志显示页面-->
<%
id=request("id") '这儿的ID是获取上页面的ID号'
if not isnumeric id then id = "" '这儿是判断ID是否数字,如果不是则ID为空'
pwd=request("pwd") '这儿是获取密码'
Set rs= ServerCreateObject("ADODBRecordset")
rsopen"select from blog_content where log_id="&id&"",conn,1,1 '这儿是打开log_id与ID相等的数据'
if rseof then
responsewrite ("没有找到相关文章")
else
if pwd = "" or pwd=rs("log_pwd") then
responsewrite rs("日志字段")
rsclose:set rs=nothing
else
%>
<form action="日志显示页面id=<%rs("log_id")%>" method="post" name=pwd>
<input name=pwd type=text>
<input type=submit name=Submit value="提交">
</form>
<%
end if
end if
%>
没测试,不知道对不对,如果还有问题请加QQ
ASP网站一般和ACCESS
数据库结合使用,再高级点,就是ASP和MSSQL数据库结合使用,简易的那种,也可以是ASP程序结合txt数据库使用。
perl+
mysql
数据库结合使用。
能不能详细点啊。
access数据库是mdb文件,如果你用access打开时不能编辑,那就检查一下这个文件是否设置为只读了。
而如果是在ASP中打开这个mdb文件进行数据库的读写,步聚如下:
一、创建AdodbConnection对象用来连接数据库
使用以下语句:Set Conn=ServerCreateObject("AdodbConnection")
打开数据库连接:ConnOpen "Provider=MicrosoftJetOLEDB40; Data Source="&servermappath("xxxmdb")
其中的xxxmdb就是你的access数据库名称(可以加上路径例如:/data/xxxmdb。
二、创建adodbrecordset记录集对象来打开数据表并获取记录集
使用以下语句:
set rs=servercreateobject("adodbrecordset")
rsopen "select from xxtable",conn,1,3
这样就打开了xxtable这个表,并返回了其中的所有记录,并且是以可编辑状态打开的。其中的conn即是你的数据库连接对象的名称,后面紧跟着的1是recordset记录集对象的游标类型,此处为1表示你通过此SQL语句获得的记录集的游标可以前后移动,这样你就可以进行记录集的循环等 *** 作。最后面的一个数字3,是记录集的锁定类型,3表示可编辑
关于游标类型及锁定类型可以百度搜索一下
通过上面两步,你已经获得了一些记录集并且处于可编辑这些记录集的状态了
接下来就可以使用rsaddnew,rsupdate进行记录的新增,更新 *** 作。
比如新增:
rsaddnew() '表示新增一条记录
rs("name")="test1"
rs("pass")="1234"
rsupdate()
这样就新增了一条记录,其中的rsaddnew()表示新增一条记录,紧接着用rs("name"),rs("pass")来写入数据到name,pass这两个字段中,然后使用rsupdate来保存一下你刚才的写入,这样一条新记录的插入就完成了。
而如果你只是修改一条已有的记录,则不需要rsaddnew(),后面的代码一样即可完成。不过修改记录一般是会先查询指定条件的某一条记录再进行rsupdae
当然你也可以不使用recordset记录集对象,而直接用sql语句的insert,update等来完成。
另外补充说明一点:
如果你发现用recordset或是sql的insert,update不能成功增加记录或修改记录,那么你就检查一下你的这个数据库连接代码是否连接成功(也就是数据库文件的路径是否写对)。如果这些都对,那么你再检查这个数据库文件是否是只读状态,如果也不是只读状态,那么就应该是文件权限的问题了。当你的MDB文件在NTFS格式的磁盘分区中时,需要设置文件的权限才可以写入数据,否则就只能读取。
以上就是关于asp怎样读取数据库全部的内容,包括:asp怎样读取数据库、ASP一般与什么数据库使用。、怎么用ASP连接sql数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)