Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.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
Javascript Can';不要在脚本标记中使用PHP_Javascript_Php - Fatal编程技术网

Javascript Can';不要在脚本标记中使用PHP

Javascript Can';不要在脚本标记中使用PHP,javascript,php,Javascript,Php,我正在使用JavaScript发出警报发出错误 如果用户输入错误,我将代码放在下面: <?php $_POST["usernamereg"] ?> = usernamereg; =usernamereg; 脚本将不再发出警报。如果我移除它,它会再次发出警报 <script type="text/javascript"> var usernamereg; var passwordreg; var password2reg; const regisForm =docum

我正在使用JavaScript发出
警报
发出错误

如果用户输入错误,我将代码放在下面:

<?php $_POST["usernamereg"] ?> = usernamereg;
=usernamereg;
脚本将不再发出警报。如果我移除它,它会再次发出警报

<script type="text/javascript">

var usernamereg;
var passwordreg;
var password2reg;
const regisForm =document.getElementById("reg-form");
function getValue(){
 usernamereg = document.getElementById("usernamereg").value;
passwordreg = document.getElementById("passreg").value;
password2reg = document.getElementById("pass2reg").value;
}
regisForm.addEventListener("submit", (e) => { 
e.preventDefault();
getValue();


    if (usernamereg.length > 30 || usernamereg.length < 5){
        alert("Your username must be longer than 5 and less than 30"); 
        <?php $err = 1;?>;
    }else { 

        <?php $_POST["usernamereg"] ?> = usernamereg;
        <?php $err = 0;?>
    }

    if (passwordreg.length > 30 || passwordreg.length < 8){
        alert("Your password must be longer than 8 and less than 30"); 

        <?php $err = 1;?>
    } else {

          <?php $_POST["passreg"] ?> = passwordreg;

        <?php $err = 0;?>
    }
    if (password2reg!=passwordreg){
        alert("Your re-type password doesnt match");
        <?php $err = 1;?>
    }else {
          <?php $_POST["pass2reg"] ?> = password2reg;

        <?php $err = 0;?>
    }

});
</script>  

var usernamereg;
var passwordreg;
var密码2reg;
const regisForm=document.getElementById(“注册表表单”);
函数getValue(){
usernamereg=document.getElementById(“usernamereg”).value;
passwordreg=document.getElementById(“passreg”).value;
password2reg=document.getElementById(“pass2reg”).value;
}
regisForm.addEventListener(“提交”,(e)=>{
e、 预防默认值();
getValue();
如果(usernamereg.length>30 | | usernamereg.length<5){
提醒(“您的用户名必须大于5且小于30”);
;
}否则{
=usernamereg;
}
if(passwordreg.length>30 | | passwordreg.length<8){
警报(“您的密码必须大于8且小于30”);
}否则{
=passwordreg;
}
if(password2reg!=passwordreg){
警报(“您重新键入的密码不匹配”);
}否则{
=密码2reg;
}
});

您需要回显该值,或者尝试不将任何内容设置为
password2reg
的值

<?php echo $_POST["passreg"] ?> = passwordreg;
=passwordreg;

请注意,这可能不是一个很好的模式,因为它非常容易出错。

您编写的代码

<?php $_POST["usernamereg"] ?> = usernamereg;
=usernamereg;
您正在尝试将javascript变量分配给PHP post变量

这是不对的

您最好发布html表单代码,因为您不需要设置
$\u post[“usernamereg”]
,因为它在提交表单时已经设置好了

如果您的用户名和密码正确,则只需提交表单


希望这能有所帮助。

当我尝试你的方法时,它并没有在$U POST[“passreg”]中增加价值。我想将passwordreg添加到$\u POST[“passreg”]。然而。谢谢你的回复。你把PHP(服务器端)和Javascript(客户端)混在一起了。在某些情况下,这可能是一个有效的用例,但听起来并不是您想要做的事情。将表单发送到服务器后,将可以访问
$\u POST
数组。您使用javascript阻止提交到服务器,同时尝试访问php
$\u POST
数组。这是不可能的。您可以使用constraint validation API尝试HTML5表单验证,或者您正在通过AJAX请求将数据提交到php请求中,这是一个即时的回答。哦,谢谢。我认为您可以将脚本中的数据添加到php中