【问题标题】:To check Username availability in jsp using only java script仅使用 javascript 检查 jsp 中的用户名可用性
【发布时间】:2014-03-28 18:58:15
【问题描述】:

您好,我是 Java 脚本的新手,我正在开发一个 Web 应用程序,我需要在客户端检查用户名的可用性,即当用户输入他想要的用户名时,它应该从 MySql 数据库登录表中检查并更新可用或不可用的状态可用的。 我尝试在网上搜索,但只找到 Ajax 代码。我需要它在 Java 脚本中所以有人在这方面帮助我。

这是我的用户名 JSP 供您参考..

<tr>
    <td> UserName* :</td>
    <td>
        <input type="text" name="Username" id="username"/><br/>
       </td>
</tr>

【问题讨论】:

  • 在您将所有用户名加载到 javascript 中之前是不可能的
  • @Joker 感谢您的编辑。
  • @Govind Singh Nagarkoti 你能更清楚地阐述你的句子吗?

标签: java javascript mysql jsp


【解决方案1】:

您想做的事情不能开箱即用,而且可能非常不安全。
请查看此链接:can I fetch record from mysql using jquery.
另一个链接:tutorials jquery and mysql.

【讨论】:

  • 它不安全??但我在我的应用程序中需要它,所以如何以安全的方式进行操作?我们可以为此使用 Springs 之类的服务层和 dao 吗??
【解决方案2】:

你想要安全,你想要在 javascript 中做,这两件事都不能发生。

最好通过 ajax 调用用户名的可用性
&lt;input type="text" name="txtUsername" id="userName"/&gt;@gmail.com&lt;br/&gt;

发送页面上其他用户占用的所有用户名。然后使用它,将它们传递给 javascript 并将它们存储为一个数组。 然后检查可用性(不推荐,因为不安全)。

ajax 的安全性是 javascript 的 100 倍

【讨论】:

  • 但是我没有 ajax 你能帮帮我吗
【解决方案3】:

澄清 Govind 在这里所说的内容。要检查用户名客户端的可用性,需要拥有所有用户名客户端。

此外,即使您确实实施了 ajax 解决方案,您也需要注意您仍然会将您的用户名暴露给任何愿意编写循环的人。

最简单的安全解决方案是对用户名验证的响应进行速率限制,并使用 jQuery 表单验证进行测试。

不要害怕 ajax。它只是对您公开服务器端的 url 的 GET 请求,它返回字符串 true/false。表单验证插件负责发出请求并在通过/失败时执行您想要的操作。

$( "#myform" ).validate({
  rules: {
    email: {
      required: true,
      email: true,
      remote: "check-email.php"
    }
  }
});

jQuery makes the ajax validation easy.

Related question with code.(php,但你会明白的。)

【讨论】:

    【解决方案4】:

    你可以在你的 jsp 中使用 jquery 来做到这一点:

    <tr>
    <td>Choose your UserName* :</td>
    <td><script type="text/javascript" src="jquery.js"></script>
    <input type="text" name="txtUsername" id="username">@gmail.com
    <div id="status"></div>
    <script type="text/javascript" src="js/check_user.js"></script>
    <span id="errorMissingUserName" style="display:none;"><font color="red">*Please provide your username.</font></span>
    <span id="errorUserNameInvalid" style="display:none;"><font color="red">*Please provide a valid username.Username can contain only alphabets numbers and periods</font></span>
    <span class="status"></span>
    </tr>
    

    通过这个[链接][使用jsp和mysql检查用户名的可用性...servlet jdbc有一个小问题我想如果你解决了它会尝试一下......

    【讨论】:

      猜你喜欢
      • 2014-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      • 1970-01-01
      • 2010-10-09
      • 2014-04-27
      相关资源
      最近更新 更多