好的,所以我正在学习网页设计作为一家公司的合作社。但是,我所在的部门在网页设计方面缺乏知识渊博的人才。所以在这里我们去...不能让Ajax与jsp一起工作
建立一个网站,将让该部门管理PTO。我想实现ajax b/c主页面将有一个日历系统,因此经理可以每周查看PTO。作为一个先驱,我试图通过“添加员工”页面来实践Ajax。 但是,我似乎无法找出我失踪的东西(也就是为什么它没有做任何事情)
此页面只需要将新员工添加到数据库。无需显示。
主要页面只是有4个文本框和我从这些领域的信息在JavaScript像这样
var firstName = document.getElementById("firstNameField");
var lastName = document.getElementById("lastNameField");
var manager = document.getElementById("managerField");
var networkID = document.getElementById("networkIDField");
够简单为止。
所以我成立了,像这样的Ajax代码,(这是从我读过聚集。
var url = "addEmpJSP.jsp?firstNameField=" + escape(firstName)+"&lastNameField="+escape(lastName)+"&managerField="+escape(manager)+"&networkIDField="+escape(networkID);
xmlhttp.open("POST",url,true);
xmlhttp.onreadystatechange=dummy;
xmlhttp.send(null);
这就是我假设它是正确的,因为我还在学习AJAX的一部分以及它是如何工作的。我不认为我需要处理的响应,因为我只是想需要什么被叫JSP文件来自动完成。(如果可能的话)。
JSP文件看起来像这样
<%
ResultSet rsEmpl;
Connection connection1 = getDBConnection();
Statement statment1=connection1.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
String fName = request.getParameter("firstNameField");
String lName = request.getParameter("lastNameField");
String manager = request.getParameter("managerField");
String networkID = request.getParameter("networkIDField");
Int empId = 0;
String EditEmplSQL = "select * from PTO_employee";
rsEmpl=statment1.executeQuery(EditEmplSQL);
rsEmpl.last();
empId = rsEmpl.getRow() - 1;
statement1.execute("INSERT INTO PTO_employee VALUES ("+empID+","+lName+","+fName+","+0+","+2+","+networkID);
%>
我在页面上执行包含ajax信息的JavaScript函数的按钮。我想避免jquery atm b/c我试图理解这个东西,以及它如何工作,然后才尝试使用像jquery这样的“快捷方式”。我正在攻读软件工程学位,所以理解这些东西是我的首要任务,没有完成。(这只是一个奖励)如果您需要更多信息,我可以提供。对不起,我的知识的缺乏,如果这是完全关闭基地则:(
“不必要的过度复杂,学习如何使用DB内置序列/自动增量ID”。 学习资源? – cphilpot 2012-03-07 16:58:56
“应该可以正常工作,但是你有一个巨大的SQL注入攻击漏洞” 我对此很陌生,解释为什么? “ – cphilpot 2012-03-07 16:59:49
”这会为您提供完整的HTML DOM元素,而不是这些元素的值。假设它是输入元素,请改为使用它们的值属性。“ 过度,谢谢。 – cphilpot 2012-03-07 17:01:19