簡體   English   中英

如何將變量從 javascript 發送到 PHP

[英]How to send variables from javascript to PHP

我想知道如何將變量從 javascript 發送到 php,以便我可以創建一個包含動態行總和的變量。

更具體:當我在搜索框中搜索時,我想獲取行數(1 個匹配是 1 行,2 個匹配是 2 行等等

我試圖實現這個: document.getElementById("i1").value = allCells.length; 所以我后來可以調用 php,但我沒有工作。

這是我的 javascript,順便說一下 javascript 完美運行。

<script language="javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script> 
<script language="javascript" type="text/javascript">  
  $(document).ready(function() 
  {
    $('#search').keyup(function() {
      searchTable($(this).val());
    });
  });
  function searchTable(inputVal) 
  {
    var table = $('.table');
    table.find('tr').each(function(index, row) 
    {
      var allCells = $(row).find('td');
      if (allCells.length > 0) {
        var found = false;
        allCells.each(function(index, td) 
        {
          var regExp = new RegExp(inputVal, 'i');
          if (regExp.test($(td).text())) 
          {
            found = true;
            return false;
            document.getElementById("i1").value = allCells.length;
          }
        });
        if (found == true)
          $(row).show();
        else
          $(row).hide();
      }
    });
  }

  $(function()
  {
    $('#table a').click(function(e) 
    {
      e.preventDefault();
      $('#result').val($(this).closest('tr').find('td:first').text());
    });
  });
</script>

我想在我的表頭中動態地吐出行的總和。

 <h3>Total: (<?php print_r($_GET["i1"])?>)  </h3>

我希望你能幫助我。

您可能從未了解過 javascript 和 php 之間的區別

Javascript 是客戶端的,這意味着一切都由您的本地系統處理。 PHP 是服務器端的,這意味着所有內容都由服務器處理並解析為 html。

您不能像以前那樣將值從 javascript 發送到普通的 php 中。 但是,您可以發送帖子或訪問相同的腳本,然后重新加載腳本的一部分

http://api.jquery.com/jQuery.get/

http://api.jquery.com/jQuery.post/

您不是第一個想要這個的人,也不是第一個被告知這是不可能的。 當你瀏覽到一個 PHP 頁面時,事情基本上是這樣的:

  1. 瀏覽器向服務器發送 HTTP 請求
  2. 服務器決定向瀏覽器發送什么頁面
  3. 服務器發現你想要一個 PHP 頁面
  4. 服務器執行 PHP
  5. 服務器將 PHP 返回的內容發送給瀏覽器
  6. 瀏覽器不知道 PHP 並顯示 HTML
  7. 瀏覽器執行 Javascript。

現在重要的是瀏覽器不知道PHP是什么,但可以執行JavaScript,而服務器不知道JavaScript是什么(為簡單起見)但可以執行PHP。 底線:兩者之間很難溝通,因為它們是在不同的地方執行的。 您很可能想使用 AJAX,所以這里是一個超級簡單的示例:

我們要獲取的 PHP 頁面:

<?
    // We're on the server
    // We're going to output something:
    echo "Yay! You can see me!"; // So the browser sees only "Yay! You can see me!" (without quotes).
?>

用於獲取 PHP 頁面的 JavaScript(使用 jQuery):

$("#anElementID").load("thePHPPageWeWantToFetch.php"); // It's that simple! The element with the ID #anElementID now contains "Yay! You can see me!" (without quotes).

我也建議,使用 AJAX 或其他東西將您的 javascript 值傳遞給 PHP。 您可以創建一個 AJAX 調用,從您的 javascript 添加數據,並在您的 PHP 文件中捕獲數據。

var value = "Jan";
$.ajax({
        url: "/form.php",
        type: "post",
        data: "name=" + value
    });

在您的 PHP 文件中,您可以執行以下操作:

<?php
$catchedName = $_POST["name"];
?>

暫無
暫無

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

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