簡體   English   中英

表格檢查信息並插入同一頁面

[英]Form check information & insert on same page

所以我有一個正規的表格

<form action="includes/send.php" method="post" onsubmit="return isValidForm()" />>

<h1>Opgeven workshops</h1>

<label for="name">Voornaam:</label>
<input type="text"  autocomplete="off" id="name" name="firstname">
<label class="choice" data-id="1"><input type="checkbox" name="group1" value="use your apple1">use your apple<span class="left" ></span>
</label>---more stuff more stuff more stuff--

現在,我提交表單,以顯示用戶在這樣的表單中填寫的信息

$f_name = $_POST['firstname'];
$l_name = $_POST['lastname'];

U hebt zich ingeschreven bij: <br />
Eerste workshop : <?php echo $first; ?><br />
Tweede workshop : <?php echo $second; ?><br />
Klopt dit?

<button type="submit" onclick="send()">Ja</button>
<button type="submit" onclick="noSend()">nee</button>

當用戶單擊send它將信息從先前的表單發送到查詢,以將其插入數據庫。 我正在嘗試執行此操作,而不必制作另一個再次提交的“隱藏表單”,因為當您只需讓腳本“等待”並在按下按鈕時繼續執行腳本/插入功能時,這是不必要的代碼。

我嘗試設置變量$submit= false; 並且內部send功能(這是在JavaScript)集合中submittrue ,但似乎並沒有工作,因為它會自動將變量設置為true沒有按下按鈕。

function send(){
<?php $submit = true ?>
var submit = <?php echo $submit ?>;
console.log(submit);
}
if($submit){
    echo 'submitted';
} else {
    echo 'not true';
}

在您的php端,調用Javascript的send()函數時傳遞值

<?php 
     $first = "First course";
     $second = "Second course"; 
?>


U hebt zich ingeschreven bij: <br />
Eerste workshop : <?php echo $first; ?><br />
Tweede workshop : <?php echo $second; ?><br />
Klopt dit?

<!-- pass the required values into the function, this is just a basic implementation you could also use a loop to fill in the values  -->

<button type="button" onclick="send(true, '<?php echo $first ?>', '<?php echo $second ?>')">
     Ja
</button> 
<button type="button" onclick="send(false)">
     nee
</button>

對於接收功能,您可以實現這樣的事情

<script type="text/javascript">
    function send(submit){      
        //Get all arguments passed except the first variable, the submit boolean
        var listOfVariablesToPost = Array.prototype.slice.call(arguments,1); 
        if(submit){
            console.log("post");
            console.log(listOfVariablesToPost);
            /* Do POST here either by using XMLHttpRequest or jQuery AJAX/POST (Or any other way you like)*/
            /* XMLHttpRequest: http://stackoverflow.com/questions/9713058/sending-post-data-with-a-xmlhttprequest */
            /* jQuery POST https://api.jquery.com/jquery.post/ */
        }else{
            console.log("No post")
            /* Don't post and do whatever you need to do otherwise */
        }
    }
</script>

這是一個非常簡單的實現,但是希望對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM