Godaddy空间的ASP程序无法写数据库乱码?设置等问题

一、出现数据库不可写的情况。
    提示:“Microsoft OLE DB Provider for ODBC Drivers error ‘80004005’ . Cannot update. Database or object is read- only.”遇到这种情况下,是由于数据库所在目录没有写权限。解决方法:到godaddy后台,找到 File Manager 选项,找到相应的目录,把他们的 permissions : Inherit (Inherit permissions from parent directory),

Read (Directory contents are visible to users),

Write (Applications can write to this directory)

即继承、可读、可写三个权限全部打钩即可。

  二、读取数据库里的数据,全部出现乱码。就是全?号问题
    这种情况是由于godaddy服务器默认是英文操作系统,解码中文汉字的时候默认是按照英文编码的,所以出现乱码。解决方法:在每个需要操作数据库的asp页面的顶部插入一行:
<%@CODEPAGE="936"%>
这样就可以解决乱码的问题。

    三、无法使用 FSO 生成静态页面html。
    这个问题是也是由于服务器英文操作系统的问题。其实godaddy空间是支持asp下的fso方式的,解决这个问题的最好方法就是采用数据流 ADODB.Stream 的方法来生成html,把平时 fso 的生成html的语句改成类似下面的语句:

采用ado方式生成HTML

set stm = server.createobject("ADODB.Stream") 
stm.Charset = "gb2312" 
stm.Open 
stm.WriteText mb_code
stm.SaveToFile Server.Mappath("index.html"), 2
set stm = nothing

    四、 godaddy的asp主机无法正常读写cookies的问题。

    这个情况是由于godaddy的主机权限做的过高,而导致子目录权限分配上出现问题。我们可以在操作 cookies 的时候加上cookies路径就可以解决问题。代码如下:

response.cookies("admin_piaoyi.org")="flymorn"
response.cookies("admin_piaoyi.org").path="/"
response.redirect "admin.asp"

 

还有其它问题等补充。。

About sosel

Comments

  1. 我记得还有个数据库选择是怎么回事

发表评论

电子邮件地址不会被公开。 必填项已用*标注