这是我的scripts.js

function showHint(str)

{

if (str.length==0)

{

document.getElementById("txtHint").innerHTML="";

return;

}

if (window.XMLHttpRequest)

{// code for IE7+, Firefox, Chrome, Opera, Safari

xmlhttp=new XMLHttpRequest();

}

else

{// code for IE6, IE5

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

}

xmlhttp.onreadystatechange=function()

{

if (xmlhttp.readyState==4 && xmlhttp.status==200)

{

document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

}

}

xmlhttp.open("GET","inputProcess.php?q="+str,true);

xmlhttp.send();

}

这是我的HTML

Type your name here :

这是我的PHP文件

$q = $_GET['q'];

$dbc=mysql_connect("localhost","root","") or die (mysql_error());

mysql_select_db('input_oop') or die (mysql_error());

$sql ="INSERT INTO users set name = '".$q."'";

mysql_query($sql) or die (mysql_error());

?>

这是问题:当我在文本框中只键入一个值时,它将多次保存在我的数据库中。

EG:我输入"Jordan"。 当我签入我的数据库时,它显示为

userid 1 J

userid 2 Jo

userid 3 Jor

等等

你的问题是什么?

我很困惑 - 究竟是什么问题?

我不知道问题是什么,但我会建议尝试使用jQuery来开始AJAX ...有很多功能可以让它变得轻而易举,并从头开始执行所有高级编码。看看:api.jquery.com/category/ajax

如果这是您的PHP文件的范围,您有一些重大的安全问题,因为您根本没有验证您的输入。任何人都可以很容易地入侵你的数据库。

问题似乎是数据被多次保存到数据库中而不是一次。至少那是我从中得到的。

这就是问题:当我输入文本框时(只有一个值)。然后它将保存在我的数据库中。 EG:文字我输入了"乔丹"。当我检查我的数据库时,它将显示:userid 1,J。userid 2,Jo。 userid 3 Jor。等等。

乔丹,这不是一个论坛。您可以随时通过编辑(我已为您完成)为原始问题添加更多信息。

它正在做的代码正是你要做的。也许你对onkeypress方法感到困惑。如果要在用户输入完成后保存信息,请尝试改为onchange或onblur

即使你在那个盒子里做,也会为每个按键开启onkeypress。所以这是发生的事情:

你输入'j'

触发showHint(),将'j'发送到服务器

该脚本将'j'插入到用户表中

输入'o',文本字段中现在有'jo'

showHint()被触发,将'jo'发送到服务器

该脚本将'jo'插入到用户表中

等等...

换句话说,您根本没有显示提示,只是盲目地将用户输入的内容插入到数据库中。

如果您想显示提示,那么您应该至少执行"SELECT"查询并将结果返回到您的页面。

您还应该使用Mootools或jQuery之类的东西来进行AJAX调用。他们将处理构建/发送请求的难点,而不必担心用户使用的浏览器。

同样,在将诸如你的脚本发布到野外之前,先阅读有关SQL注入的信息。

您还有一个格式错误的插入查询。要插入新记录,基本语法是:

INSERT INTO sometable (field1, field2, field3, ...) VALUES (value1, value2, value3, ...)

你在那里混合了一些部分的'更新'查询,其格式是

UPDATE sometable SET field1=value1, field2=value2, ....

我无法看到您的查询如何像现在一样将任何内容插入到数据库中,因为语法完全被破坏了。

马克说。

关于INSERT和UPDATE语法,MySQL实际上支持多个,如dev.mysql.com/doc/refman/5.1/en/insert.html所示。

function sendRequest(str) {

var xhttp = new XMLHttpRequest();

xhttp.onreadystatechange = function() {

if (this.readyState == 4 && this.status == 200) {

document.getElementById("txtHint").innerHTML = this.responseText;

}

};

xhttp.open("GET","inputProcess.php?q="+str, true);

xhttp.send();

}

function showHint(str) {

if (str.length==0) {

document.getElementById("txtHint").innerHTML="";

return;

} else {

sendRequest(str)

}

}

我知道你要做什么,请使用标准方法......代码中唯一的问题实际上是onKeypressed。当你确定用户完全输入了这个词并且不再打字时,你需要调用请求我不认为它在JS中很容易,你当然可以使用很多工时来完成。

根据您使用的浏览器的一点点,onkeypress事件也将触发不改变内容的键,如箭头键,输入或制表键,F5刷新等等...有些浏览器甚至按下shift触发onkeypress。有关详情,请参阅此页面。

由于您的PHP代码不会检查输入的值是否为新值,因此每次按下其中一个键时,它都会添加输入的值。

此外,为此使用jQuery是个好主意。

html定位ajax php,AJAX HTML PHP问题相关推荐

  1. 怎么中断一个ajax请求,ajax、fetch、axios如何中断请求?

    先来说一说"中断请求"的实际场景,当页面有多个tab页签时,每次切换页签都会去请求数据,频繁的切换就会去请求很多次,比如A页签切换到B页签,A页签请求完全是不必要的,这时候可以在切 ...

  2. ajax入门实例代码,AJAX、AJAX实例及AJAX源代码

    AJAX.AJAX实例及AJAX源代码 作者:佚名 来源:CNZZ 2008-1-4 AJAX介绍 AJAX 关键词: JavaScript脚本和可扩展标记语言(XML) WEB浏览器技术 开放式WE ...

  3. 六十八、完成Vue项目推荐和周末游组件,并使用Ajax发起ajax请求

    @Author:Runsen 2020/10/27. 周二.今天又是奋斗的一天. 写在前面:我是「Runsen」,热爱技术.热爱开源.热爱编程.技术是开源的.知识是共享的.大四弃算法转前端,需要每天的 ...

  4. $.ajax 发送请求,JavaScript之Ajax-2 Ajax(使用Ajax发送get请求、使用Ajax发送post请求)

    一.使用Ajax发送get请求 发送异步请求的步骤 - 获取Ajax对象:获取 XMLHttpRequest对象实例 - 创建请求:调用XMLHTTPRequest对象的open方法 - 设置回调函数 ...

  5. 一、AJAX学习笔记——原生AJAX (ajax简介、XML简介、ajax优缺点、ajax的使用)

    第 1 章:原生 AJAX 1.1 AJAX 简介 AJAX 全称为 Asynchronous JavaScript And XML,就是异步的 JS 和 XML. 通过 AJAX 可以在浏览器中向服 ...

  6. ajax hacking,Ajax Hacking

    Ajax Hacking 更新时间:2006年11月06日 00:00:00   作者: 由此Ajax攻击可见一斑,然而这还仅仅是个开始.7月份百度开通了百度空间,虽然没有指明是应用web2.0技术, ...

  7. ajax=1,ajax专栏1

    一.什么是ajax?有什么作用? ajax中文翻译为:异步的js和xml.用于网页向服务器发送请求(可支持同步和异步2种方式),接收服务器响应后的处理数据. 注:同步,网页发送请求后,锁定当前网页(不 ...

  8. AJAX教程@ajax

    文章目录 1.AJAX 1.什么是AJAX 2.AJAX核心对象 - 异步对象(XMLHttpRequest) 1.什么是XMLHttpRequest [简称为 xhr] 2.创建 异步对象 (xhr ...

  9. 了解ajax,ajax的优化有哪些

    -20-01-20 ------------------------------学习打卡-------------------------------------------------------- ...

  10. 什么是Ajax以及ajax请求的步骤

    什么是Ajax以及ajax请求的步骤 1.Ajax是什么? Asynchronous JavaScript & XML.Ajax是web开发的一种技术. 2.Ajax请求的步骤 (1)创建`X ...

最新文章

  1. Linux内核TCP/IP参数分析与调优
  2. 5G NR — Open vRAN 的组织单位
  3. coreldraw 双层边框
  4. Web框架之Django_03 路由层了解(路有层 无名分组、有名分组、反向解析、路由分发 视图层 JsonResponse,FBV、CBV、文件上传)
  5. 独家下载!2021前端热门技术解读
  6. 云原生持续交付的模式和实践
  7. java中找不到javax包_logstash 找不到 java 环境
  8. CentOS 配置网络yum源
  9. 阿里云域名绑定IP手把手教学
  10. markdown删除代码空白行
  11. TCP和UDP对比的优势和劣势
  12. js实现数组翻转(倒序输出)
  13. HDU 4699 Editor (对顶栈)
  14. el-table单元格中加上横向柱状图
  15. 【BZOJ3653】谈笑风生 离线+树状数组+DFS序
  16. 让女人无法抗拒的30句表白【实用】
  17. Error waiting for a debug connection: Bad state: No element
  18. 七巧节前夕,恋爱仙子探访黑店记
  19. 过程计算机控制综合课程设计,计算机控制技术综合课程设计.doc
  20. 如何打包文件及其所在目录

热门文章

  1. PLSQL Developer中test window的使用
  2. 安装pycrypto 2.6.1各种坑
  3. 如何用python和flask以太坊智能合约开发
  4. yum下载rpm包、源码包安装
  5. 张志华:机器学习的发展历程及启示
  6. IDEA、Eclipse的详细安装配置及Tomcat服务集成介绍
  7. LAMDA表达式学习
  8. Mac OS X 10.7.2 Lion下快速锁定屏幕
  9. Yapi 部署及遇到的坑
  10. windows下的workon env