簡體   English   中英

如何將用戶輸入數據發送到PHP以及如何將數據從一個PHP頁面發送到另一個PHP頁面

[英]How would I send user input data to PHP & send data from one PHP page to another PHP page

我目前正在創建一個基本的數學網站,它將要求用戶解決一個乘法問題。

我計划將HTML布局為:

 1*8 = <input type="number" maxlength="3" name="answer1"><br> 2*9 = <input type="number" maxlength="3" name="answer2"><br> 4*4 = <input type="number" maxlength="3" name="answer3"><br> <button type="button">Check Answers</button> <p></p> 

此HTML代碼是由一些PHP代碼生成的:

<?php
    $t = 0;

    for ($n = 1; $n <= 10; $n++) {

        $a = rand(1, 10);
        $b = rand(1, 10);

        echo $a . "*" . $b . " = <input type=\"number\" maxlength=\"3\" name=\"answer" . $n . "\"><br>";

        $t = $a * $b;
    }
?>

現在生成了,我算出了$ a和$ b(隨機數)的總和:

$t = $a * $b;

對於HTML按鈕,我想要它,因此當用戶單擊它時,它將檢查所有輸入框,看看他們輸入的內容是否等於$ t忘記所有驗證,我現在要開始工作的只是基本知識。

我使用ajax創建了一個單擊事件,進一步介紹了這一點:

$(document).ready(function(){
    $("button").click(function(){
        $.ajax({
            type: 'POST',
            url: 'calcc.php',
            success: function(data) {
                $("p").text(data);
            }
       });
   });
});

我已經把它弄亂了一段時間。 我得出結論,我需要使用$ _SESSION或類似的東西來保存$ t之前的值,但是我似乎無法弄清楚它的工作方式,我不斷收到長重復數組的錯誤,並且我幾乎不知道該如何提取所需的信息。

我遇到的另一個問題是在單擊時檢索用戶輸入,我以前使用過POST和GET,但是當我單擊“提交”按鈕時,它將以一種方式來使頁面重新加載並更改所有隨機數。

我最好是想用PHP解決這個問題。 這困擾了我一段時間,我只是想看看你們中的任何一個人對我如何做這項工作有什么好主意。

先感謝您。

有兩種可能的解決方案來解決您的問題。

  • 第一個(也是最簡單的)是在同一腳本中檢索$ _POST []參數,並在收到不為空的$ _POST []參數時執行代碼。
  • 第二種解決方案(您在此處使用的解決方案)是使用AJAX。 我查看了您的代碼並進行了一些調整。

    $(document).ready(function( e ){ //Add an preventDefault on your event in order to not do the submit of the form. e.preventDefault(); $("button").click(function(){ //Get all the data from your form var data = $(form).serialize(); $.ajax({ type: 'POST', //send the data with the ajax. // You can retrieve it in your php through $_POST['name of form field'] data: data, url: 'calcc.php', success: function(data) { $("p").text(data); } }); }); });

希望對您有所幫助:)如果您需要更多解釋,請發表評論。

我也會在輸入字段中放入$ a和$ b。 它們可能是只讀的,甚至是隱藏的。 在這種情況下,您的php腳本會從用戶那里獲得隨機$ a和$ b以及結果。 您的php腳本現在可以驗證結果了。 告訴我您是否需要一些代碼。

暫無
暫無

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

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