Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php jqueryajax在KeyDown上检查用户名是否可用。太多的数据库点击?_Php_Jquery_Mysql_Ajax - Fatal编程技术网

Php jqueryajax在KeyDown上检查用户名是否可用。太多的数据库点击?

Php jqueryajax在KeyDown上检查用户名是否可用。太多的数据库点击?,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,如果我有一个函数来检查数据库是否有用户名,并且我在jquerykeydown事件中对该函数进行了Ajax调用,那么是不是太多的数据库点击?每次用户点击一个键,就会给我打电话。有更好的方法吗 谢谢我通常会在不同的网站上通过以下方式实现这一点 处理用户名/电子邮件文本框的onchange事件,并在onchange事件中进行验证 在用户名/电子邮件文本框旁边有一个标签为“检查可用性”的按钮/图像,如果用户单击图像/按钮,则执行验证 在任何一种情况下,都建议执行服务器端检查,然后将错误(如果有)显示为响

如果我有一个函数来检查数据库是否有用户名,并且我在jquerykeydown事件中对该函数进行了Ajax调用,那么是不是太多的数据库点击?每次用户点击一个键,就会给我打电话。有更好的方法吗


谢谢

我通常会在不同的网站上通过以下方式实现这一点

  • 处理用户名/电子邮件文本框的onchange事件,并在onchange事件中进行验证
  • 在用户名/电子邮件文本框旁边有一个标签为“检查可用性”的按钮/图像,如果用户单击图像/按钮,则执行验证

  • 在任何一种情况下,都建议执行服务器端检查,然后将错误(如果有)显示为响应。

    我通常发现在不同的站点上通过以下方式实现这一点

  • 处理用户名/电子邮件文本框的onchange事件,并在onchange事件中进行验证
  • 在用户名/电子邮件文本框旁边有一个标签为“检查可用性”的按钮/图像,如果用户单击图像/按钮,则执行验证

  • 无论哪种情况,都建议执行服务器端检查,然后将错误(如果有)显示为响应。

    或者,为什么不调用检查onBlur


    然后用户只会在单击下一个字段时检查可用性。

    或者,为什么不调用复选框

    然后,用户只会在单击下一个字段时检查可用性。

    使用
    setTimeOut()
    在最后一次按键后1秒运行它。如果用户键入的速度足够快,则只会生成一个查询。如果数据库索引设置正确,即使是大量查询也不会有问题。

    使用
    setTimeOut()
    在最后一次按下键1秒后运行它。如果用户键入的速度足够快,则只会生成一个查询。如果数据库索引设置正确,即使是大量的查询也不会有问题。

    过去我使用过。它将在用户完成键入后几秒钟内执行请求,防止大量的请求进入服务器。

    在过去,我使用了。它将在用户完成键入后几秒钟内执行请求,防止大量的请求进入服务器。

    我正在使用setTimeout()

    我正在使用setTimeout()


    您可以尝试每5-15秒检查一次用户可用性。您可以每5-15秒检查一次用户可用性。这正是它的用途。:)是的,这正是它的用途。:)
    var timer;
    
    $('#name').keyup(function(){
    
        clearTimeout(timer);
        timer = setTimeout(name_check, 300);
    
    });