簡體   English   中英

將數值從一個 php 文件傳遞​​到另一個

[英]Pass numeric value from one php file to another

我有 2 個 php 文件,第一個文件是找到分頁的索引文件,以及一個用於獲取在第二個文件中找到的表數據的 ajax 腳本。

第一個文件中的 ajax 腳本也將用戶請求的排序選項發送到第二個文件。 然后,第二個文件將排序並計算找到的結果數。

由於分頁在第一個文件中,我需要第二個文件的結果來計算我的分頁的正確頁數。

我有這個分頁腳本

<ul class="pagination mx-1 mx-md-0">
    <?php 
        if(!empty($total_pages)){
            for($i=1; $i<=$total_pages; $i++){
                if($i == 1){
    ?>
        <li class="pageitem active" id="<?php echo $i;?>">
            <a href="JavaScript:Void(0);" data-id="<?php echo $i;?>" class="page-link" ><?php echo $i;?></a>
        </li>
            <?php 
                }
                else {
            ?>
        <li class="pageitem" id="<?php echo $i;?>">
            <a href="JavaScript:Void(0);" class="page-link" data-id="<?php echo $i;?>"><?php echo $i;?></a>
       </li>
       <?php
                }
            }
       }
       ?>
</ul>

我的第一個文件有這個 ajax 腳本

$("#target-content").load("pagination.php?page=1");
$(".page-link").click(function(){
    var id = $(this).attr("data-id");
    var sort = $("#myselect").val();
    var select_id = $(this).parent().attr("id");
    var categorytype = MyApp.categorytypes;
                            
    $.ajax({
        url: "secondfile.php",
        type: "GET",
        data: {
            page : id,
            sorted:sort,
            categorytype:categorytype
        },
        cache: false,
        success: function(dataResult){
            $("#target-content").html(dataResult);
            $(".pageitem").removeClass("active");
            $("#"+select_id).addClass("active");
        }
    });
});  

對於我的第二個文件,我有這個代碼

<? php
    $limit= 2;
    $sqls = "SELECT COUNT(id) FROM producttable $categorytypes ORDER BY $sortertype 
    $sorterorder LIMIT $start_from, $limit";  
    $rs_results = mysqli_query($conn, $sqls);
    $row = mysqli_fetch_row($rs_results);  
    $total_records = $row[0]; 
    $total_pages = ceil($total_records / $limit); 
?>

並將我的數據傳遞給我嘗試創建另一個 ajax 腳本的第一個文件

$(document).ready(function() {
     var numb = <?php echo $total_pages ?>;
     $.ajax({
         url: "inde.php",
         type: "GET",
         data: {
             numb:numb
         }
     });
});

並嘗試使用 GET [] 獲取第一個文件中的值,但似乎不起作用。 我在這里做錯了嗎? 我應該重寫我的整個代碼嗎?

我顯示的表格運行良好,它只是在我對表格中的數據進行排序時顯示的頁數。

這就是我要做的。 刪除您顯示的最后一個代碼位,並在您的第二個 .php 文件中回total_pages這樣的total_pages

<? php
    $limit= 2;
    $sqls = "SELECT COUNT(id) FROM producttable $categorytypes ORDER BY $sortertype 
    $sorterorder LIMIT $start_from, $limit";  
    $rs_results = mysqli_query($conn, $sqls);
    $row = mysqli_fetch_row($rs_results);  
    $total_records = $row[0]; 
    $total_pages = ceil($total_records / $limit);
    echo $total_pages;
?>

然后在您的 ajax 腳本中,使用 JS 更新您的分頁,並且您將$total_pages作為dataResult傳遞

$.ajax({
    url: "secondfile.php",
    type: "GET",
    data: {
        page : id,
        sorted:sort,
        categorytype:categorytype
    },     
    cache: false,
    success: function(dataResult){
        // dataResult will contain $total_pages
        $("#target-content").html(dataResult);
        $(".pageitem").removeClass("active");
        $("#"+select_id).addClass("active");
        updatePagination(dataResult);
    }
});

暫無
暫無

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

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