gpt4 book ai didi

javascript - 防止Javascript验证失败后php执行代码并用JS阻止某些字符

转载 作者:行者123 更新时间:2023-11-28 07:43:45 25 4
gpt4 key购买 nike

我有一个用户注册表单,在用户填写所有信息后,我提交输入的值:

<?php if (isset($_POST['submit'])) {
echo '<script type="text/javascript">CheckPassword(document.userform.password);</script>';

## connect mysql server
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
# check connection
if ($mysqli->connect_errno) {
echo "<p>Fehler Nummer {$mysqli->connect_errno} : {$mysqli->connect_error}</p>";
exit();
}
## query database
# prepare data for insertion
$username = $_POST['username'];
$password = $_POST['password'];
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$email = $_POST['email'];

# check if username and email exist else insert
// u = username, e = emai, ue = both username and email already exists
//the rest of the code is not important for this question

在第一行( echo '<script... )我调用以下 JavaScript 函数:

<script type="text/javascript">
function CheckPassword(inputtxt)
{
var passw = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{6,20}$/;
if(inputtxt.value.match(passw))
{
alert("check");
return true;
}
else{
alert("!check");
return false;
}
}
</script>

该调用工作正常,但如果用户输入了无效密码,我不想运行其余的 php 代码。

此外,我想阻止用户输入特殊字符,例如:'、"、`、´、.. 如何在 Javascript 中执行此操作?

最佳答案

你不能这样做,你需要将你的js验证功能移到表单提交上,因为php运行服务器端,而js运行在客户端。当你的 js 函数执行时,你的 php 已经在服务器上执行了。

执行此操作的正确方法是在表单提交时调用您的函数。

示例:

<form name="test_frm" id="test_frm" action="abc.php" onsubmit="return CheckPassword();">

注意:这只是一个例子

关于javascript - 防止Javascript验证失败后php执行代码并用JS阻止某些字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27686476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com