Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.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 window.location.href不';不能使用表单提交按钮_Javascript_Php_Html_Forms - Fatal编程技术网

Javascript window.location.href不';不能使用表单提交按钮

Javascript window.location.href不';不能使用表单提交按钮,javascript,php,html,forms,Javascript,Php,Html,Forms,我试图创建一个投票指南针,在这里我试图提交一个表单并将答案插入数据库,然后将用户带到结果页面。当我有一个提交按钮时,我能够成功地存储答案,但页面只是刷新,而不是将它们带到结果页面 但是,如果我将“提交”按钮更改为以下内容: <img src="../pics/process.png" style="border:none; " onclick="Sort();"> ?>首先,将submit事件侦听器附加到表单。在此调用之后

我试图创建一个投票指南针,在这里我试图提交一个表单并将答案插入数据库,然后将用户带到结果页面。当我有一个提交按钮时,我能够成功地存储答案,但页面只是刷新,而不是将它们带到结果页面

但是,如果我将“提交”按钮更改为以下内容:

<img src="../pics/process.png" style="border:none; " onclick="Sort();">

?>

首先,将
submit
事件侦听器附加到表单。在此调用之后,检索
事件
对象并调用
preventDefault()
方法以防止表单提交的默认行为。在此之后,请调用
window.location.href
,引导用户进入相关页面

例如:


首先,将
submit
事件侦听器附加到表单。在此调用之后,检索
事件
对象并调用
preventDefault()
方法以防止表单提交的默认行为。在此之后,请调用
window.location.href
,引导用户进入相关页面

例如:



请显示Javascript和PHP代码。正确的方法是将表单直接提交到结果页面:
,并给出您要提交的复选框名称和值。请默认提交操作。您的url中有错误:
window.location.href=“./australiacompassresult.PHP?”+party1+“&”+第2方使用以下命令:
window.location.href=“./australiacompassresult.php?”+“party1=“+party1+”&party2=“+party2
在请求的页面上获取
get
参数。以下是如何在成功提交或失败后重定向到所需页面的教程:能否显示Javascript和PHP代码正确的方法是将表单直接提交到结果页面:
,并给出您想要的复选框名称和值submit.prevent默认提交操作。您的url中有错误:
window.location.href=“./australiacompassresult.php?”+party1+“&+party2使用以下命令:
window.location.href=“./australiacompassresult.php?”+“party1=“+party1+”&party2=“+party2
在请求的页面上获取
get
params。以下是如何在成功提交或失败后重定向到所需页面的教程:此回答中未定义变量谢谢。当我添加这个时,我似乎能够生成结果,但它们没有被插入到数据库中。如果删除e.preventDefault(),则可以将结果插入数据库,但不会将用户带到结果页。我已经包含了PHP,用于将我的答案从表单插入数据库。页面是否会进入结果页面,然后重新加载回表单页面?不,它似乎只是重新加载页面,而从未获得结果。此外,这是否应该包含在我的排序函数中,或者在我的表单下作为单独的javascript代码?在这个回答中变量没有定义谢谢。当我添加这个时,我似乎能够生成结果,但它们没有被插入到数据库中。如果删除e.preventDefault(),则可以将结果插入数据库,但不会将用户带到结果页。我将PHP用于将答案从表单插入数据库。页面是否会进入结果页面,然后重新加载回表单页面?不,它似乎只是重新加载页面,而从未获得结果。此外,这应该包括在我的排序函数中,还是作为表单下的单独javascript代码?
`<script type="text/javascript">
    function Sort() {
        //australia
        var party1= 0;
        var party2= 0;

        if (compass.q1[0].checked == true) {
            party1 += 1;
        } else if (compass.q1[1].checked == true) {
            party2 += 1;
        } else {
            alert("Please answer question 1.");
            return;
        }

        if (compass.q2[0].checked == true) {

            party1 += 1;
        } else if (compass.q2[1].checked == true) {
            party2 += 1;
        } else {
            alert("Please answer question 2.");
            return;
        }

        window.location.href = "./australiacompassresult.php?" + party1+ "&" + party2;
    } 
<form id="compassform" name="compass" method="post">
<input type="submit" value="Submit">
    $link = mysqli_connect("localhost","username","password", "database");

        if (mysqli_connect_error()) {
    
            die ("There was an error connecting to the database");
    
        }    
            $query = "INSERT INTO `users` (`q1`, `q2`, `q3`, `q4`, `q5`, `q6`, `q7`, `q8`) VALUES ('".mysqli_real_escape_string($link, $_POST['q1'])."', '".mysqli_real_escape_string($link, $_POST['q2'])."','".mysqli_real_escape_string($link, $_POST['q3'])."','".mysqli_real_escape_string($link, $_POST['q4'])."','".mysqli_real_escape_string($link, $_POST['q5'])."','".mysqli_real_escape_string($link, $_POST['q7'])."','".mysqli_real_escape_string($link, $_POST['q7'])."','".mysqli_real_escape_string($link, $_POST['q8'])."')";
            
            if (mysqli_query($link, $query)) {
                
                echo "";
            }
document.getElementById("form").addEventListener("submit",(e) => {
        e.preventDefault()
        window.location.href = "./australiacompassresult.php?" + party1+ "&" + party2;
});