画江湖之换世门生床戏:问个ASP中很简单但是很苦恼的问题

来源:百度文库 编辑:高考问答 时间:2024/04/28 01:24:26
希望有人能够给我讲的很清楚哦,虽然很基础,不过现在真的很麻烦!!
1 ASP的方法,属性中的参数什么时候要带" "号,什么时候不带呢???
有的人说:ASP中处在双引号中的可以是任意的字符、字符串,HTML代码。
我就不明白了,如request.form("i_name"),其中的i_name明明是个表单中我们命名的一个变量,那么就不必要双引号了嘛!直接写request.form(i_name)不才符合规则么?
2 ()的有无问题:
在有的书中response.write("字符串"/变量名),有的书直接写"字符串"&"字符串"的形式,没括号,其ASP的方法中也有这种现象,有无( )混用.这是什么原因.
3 set rst=conn.Execute("insert into user (a_user,a_code) values ('" & request.form("b_user")&"','" & request.form("b_code" & "')") 其中的单引双引号都是怎么弄的:( ,另外这样的句子一般怎么写不会出错,我总写不对,抄都出错啊,恳请高手的回答,希望通俗点的回答,真的谢谢啦!!!
大家看我的理解对么?1DW中我们给表单起的名字是字符串而非变量 2 还不懂.. 3OK

1.
request.form("i_name")和request.form(i_name)的不同之处在于
第一个i_name是字符串,i_name是变量~
当然如果你在之前加上i_name="i_name"的话你也可以直接引用request.form(i_name)
2.
()在asp.net必须有~而在ASP里面可有可无~
3.
如果你要用insert语句的话都没有必要在设置一个对象rst再打开这个对象。你可以直接
conn.execute("insert into user(a_user,a_code) values('"&request.form("b_user")&"','"&request.form("b_code")&"')")
就可以了!

在SQL里面 如果插入的值是字符串类型必须得在两边加上''单引号,而是数字时则不用,这要看你数据库里面设置的是什么类型,
在ASP语句里面引用ASP的时候需要使用"&ASP语句&",也就是这里的request.form("b_user")是ASP语句,&是ASP里面的连接符号~
这里的意思是把这整个执行的SQL语句分成了几部分
(1).insert into user (a_user,a_code) values('
(2).request.form("b_user")
(3).','
(4)request.form("b_code")
(5)')
如果表单传递的b_user="user",b_code="code"的话等同于执行
conn.execute("insert into user(a_user,b_code) values('user','code')")

response.write这个只是自己习惯而已,标准的是response.write(变量或者"字符串"
)

request.form("i_name") 这是获得变量的值?哈哈,楼上的真是搞笑
这个的意思应该是 获得客户端表单中 名字为i_name 的表单元素传递来的值
至于括号问题,我也遇到过,但是我发现,不论是asp的内建对象或者组建 的方法你都加上括号就都没问题,比如response.write("你好")
但这样写也可以 response.write "你好"
我认为加不加括号,完全是为了代码的可读性
至于最后的那条执行sql语句的问题,我也是经常遇到,有时真的是想破头也不想不出错误在哪里,代码就是照书或者别人的代码超的 ,也还是不行,那时我都快吐血了,呵呵, 但朋友,你在抄别人的sql语句的时候,有没有超错?你肯定会说:“没有啊,我都对了几十遍了,不可能错的” 是吗?那你的数据库的表中的字段的名字和人家的代码的数据库的表当中的字段名字一样吗?肯定是不一样的吧,哈哈,我学了asp 三个月了,经常碰到的关于sql语句出错的问题,居然是数据表的字段名字的 错误,比如我的数据表当中有一个名字是 “time” 的字段,在执行的时候就会出错,如果你把这列字段的名字改成 "time2" 那就不容易出错,得出的结论是给数据表的字段命名时最好不要用VB当中的函数,语句等
还有就是读取/插入数据表中 数字值 的字段时
sql="insert into user (a_user,telnumaber) values ('"&不是数字的变量名&"',' &数字的变量名&'"
那些单引号或者双引号就是sal语句的格式,至于为什么是这样的,那你就要去问开发数据库语言的高人了

第一点:你的想法是对的,引用字符串要加引号,不加引号表示引用变量
第二点:我没见过方法不要加括号的,除非前面有个call,这是vb和asp独有的
第三点:注意不要把变量写到相匹配双引号中间就行了,双引号的匹配是连续的,第一个和第二个是一对,第三个和第四个是一对...

1.要靠平时经验的积累,带\"\"的一般是引用表单里的东东或者是数据库的字段名,还有就是一些像remote_add之类的参数等等
2.个人认为:带()是java的写法,不带是VB的写法,两种可以混用
3.你OK了,我就不多说了

1.看传递方式
get和post 是不同的获取方式的
可以同时用request("***")获取值
2.如是变量直接response.write 变量
比如 dim a
a=request("name")
response.write a 即可
如果不是变量就要response.write("你要写的字符串")
3.别用你的那中,用
这样的方式:
set rs=..............
sql="select * from user""
rs.open sql,conn,1,3
rs.addnew
rs("a_user")=request("name")
rs("a_code")=request("code")
rs.update
rs.close
set rs=nothing