<div class="main-container">
Username:<br>
<input type="text" name="uname" value="Username">
<br>
Password:<br>
<input type="password" name="pword" value="Password">
<br><br>
<input type="submit" value="AddRecord">
<input type="reset" value="Cancel">
</div>
</div>
</body>
<script type="text/javascript">
function AddRecord() {
var adoConn = new ActiveXObject("ADODB.Connection");
var adoRS = new ActiveXObject("ADODB.Recordset");
adoConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source = C:\\Documents\\Writings.mdb");
adoRS.Open("Select * From User", adoConn, 1, 3);
if(!rs.bof){
rs.MoveFirst();
while(!rs.eof){
var data=rs(1);
if(data==user.value){
alert("This user already exists!");
exists=1;
}else{
break;
rs.movenext();
}
}
}
if(exists!=1){
adoRS.AddNew;
adoRS.Fields("UserName")=user.value;
adoRS.Update;
adoRS.Close();
adoConn.Close();
alert("User successfully registered!");
document.cookie=user.value;
window.location="https://www.google.co.uk";
}
</script>这不起作用,按钮什么也不做。我试着移动我的数据库,但同样不起作用。我目前使用的是Google Chrome。我的数据库名为Writings,是文件夹documents。网站应该从文本框中获取输入的信息,并将其放入表格中,但由于某种原因,它不起作用
发布于 2017-03-19 20:26:25
当你创建一个网页时,你通常希望人们浏览它,然后填写并提交。在你展示的代码中,数据库是本地的,所以如果100人想要提交,每个人都有自己的数据库,或者都需要使用同一台计算机。对于此类作业,您需要使用与中央数据库协同工作的web服务,然后,您可以使用javascript调用该服务将数据插入到数据库中。例如,你可以在MS Sql server中使用c#,甚至可以在Access数据库中使用,或者在mysql中使用php。
发布于 2017-03-20 04:40:47
您正在使用ActiveX连接到Access数据库。这在chrome中是行不通的,正如this answer所指出的:
要创建COM对象(这就是ActiveXObject所做的),你需要使用一个原生支持ActiveX的浏览器(旧的IE),或者一个你可以使用和/或编写一个老式的(NPAPI)“插件”的浏览器。
由于周围的安全问题,所有主流浏览器都已经停止或正在积极(没有双关语)停止对NPAPI插件机制的支持。
因此,您必须使用为您的脚本启用了ActiveX的旧Internet Explorer。
这是一项老技术,不应该再使用了。将您的数据库移动到中央服务器。
https://stackoverflow.com/questions/42886460
复制相似问题