ASP:这段代码的目的究竟是什么

时间:2015-07-20 14:47:40

标签: database asp-classic

我目前正在尝试将项目从ASP转移到PHP。我没有使用ASP的经验,我发现很难弄清楚以下几行正在做什么。

我可能应该提到原来的解决方案不是由我自己构建的,而是在黑暗中。如果有人能够分解实际发生的事情,那么我就可以模仿PHP中的逻辑。

set rs_register = server.createobject("adodb.recordset")
        rs_register.cursorlocation = adUseClient
        rs_register.open str_products_sql, str_connection, adOpenStatic, adLockPessimistic '(CursorType,LockType)
        rs_register.addnew
                rs_register("str_session_id") = session.sessionid
                rs_register("str_payment_ip") = request.servervariables("remote_addr")
                rs_register.update  
                int_payment_id = rs_register("int_payment_id")
                rs_register("str_reference") = get_reference(int_payment_id,str_payment_type)
                rs_register.update
                str_reference = rs_register("str_reference")
                str_session_id = rs_register("str_session_id")

                if int_payment_id = "" then
                int_payment_id = rs_register("int_payment_id")
                end if
                rs_register.close : set rs_register = nothing

1 个答案:

答案 0 :(得分:1)

要确定,您需要检查str_products_sql的内容 - 这将告诉您尝试添加新记录的表:

rs_register.open str_products_sql

此命令表示您正在添加新记录:

rs_register.addnew

然后你要设置几个字段并保存到数据库:

rs_register("str_session_id") = session.sessionid
rs_register("str_payment_ip") = request.servervariables("remote_addr")
rs_register.update  

之后,它会查找新添加的记录中的int_payment_id字段(可能是自动增量字段或触发器),然后根据另一个函数设置str_reference字段({{1 }})。之后,它只是将结果读取到局部变量。