我所做的是取决于单击的链接,重新构建 URL 并从 URL 中读取变量,然后对经典 ASP 页面进行 AJAX 发布调用,然后将发布值插入 SQL 数据库。
这是在 document.ready() 函数中,因此当 URL 发生更改时,它将读取新值;
//check if there's a video to log, and log that video
var params = {};
params["loggedFrom"] = getUrlVars()["loggedFrom"];
params["logVideo"] = getUrlVars()["logVideo"];
params["ipAddress"] = getUrlVars()["IPAddress"];
params["fromApp"] = "P360";
params["fromPage"] = "P360 Trading Overview";
params["videoName"] = getUrlVars()["videoName"];
//alert(params["loggedFrom"]);
if(params["logVideo"] == "true"){
var now = new Date();
now = now.format("MM/dd/yyyy hh:mm:ss");
$.ajax({
type:"POST",
url:"p360TradingLog.asp",
data: params,
success : function(d){
alert("this post was successful");
}
});
}
params[] 似乎在执行
alert(params["logVideo"]);
它返回正确的值,但我没有收到“这篇文章成功”警报。我的问题是我的代码应该在 p360TradingLog.asp 页面中以获取这些发布的值并正确插入它们?这是我当前的代码,但无法正常工作。
<%
Set con = Server.CreateObject("ADODB.Connection");
set ipAddress = Request.Form("params")("ipAddress");
set videoName = Request.Form("params")("videoName");
set fromPage = Request.Form("params")("fromPage");
set fromApp = Request.Form("params")("fromApp");
set loggedFrom = Request.Form("params")("loggedFrom");
set timeOfDay = Now;
var conStr = "Provider=SQLOLEDB.1;Password=xxxxxx;Persist Security Info=True;User ID=xxxxx;Initial Catalog=xxxxx;Data Source=xxxxx";
con.Open(conStr);
Set rs = con.Execute("Insert into dbo.tbl_Prospect_Video_Tracking(IPAddress,videoName,fromPage,fromApp,loggedFrom,dtViewed)values('" + ipAddress + "','" + videoName + "','" + fromPage + "','" + fromApp + "','" + loggedFrom + "','" + timeOfDay + "')");
//alert(insertSQL);
rs.close();
con.close();
%>
有没有办法让我在 P360TradingLog.asp 页面上测试可能出现的错误?我不熟悉这些帖子,如果这些看起来很蹩脚,我很抱歉。