簡體   English   中英

如何在不重新加載頁面的情況下使用javascript按鈕單擊更改php的變量

[英]how to change the variable of php with javascript button click without reloading the page

我創建了一個新聞區域,在該區域中一次顯示3個拇指消息源是來自mysql數據庫。 我已經使用過這樣的查詢:

$ eu = 0; $ limit = 3; $ query2 = mysql_query(“ SELECT * FROM news ORDER BY ID DESC LIMIT $ eu,$ limit”);

現在我也用這樣創建了兩個按鈕

我想使用此按鈕來顯示接下來的3個拇指onclick和上一個3個拇指。 但無法更改查詢內的值,即$ eu。

我該如何使用javascript或任何其他建議更改mysql查詢中的$ eu值,並且我也不想通過傳遞查詢參數重新加載頁面來做到這一點。 我想要它而無需重新加載頁面

您將需要進行ajax調用,傳遞所需的$ eu值(例如3、6、9等),然后傳遞新聞源的內容,以替換現有批次。

您可以通過多種方式執行此操作,而最簡單的方法取決於您使用的框架。 Google是您的朋友,這里有很多教程等。

您不能僅僅因為服務器端腳本已經運行並且javascript是客戶端腳本而僅通過Javascript更改php變量。

我建議使用JavaScript將ajax請求發送到接受$ eu作為參數的PHP腳本。

在該PHP中,使用$ eu進行查詢,並打印出搜索結果。

在您的javascript中,在成功執行ajax請求時捕獲此結果,並使用結果處理/替換HTML中的某些元素。

您無法直接從Javascript更改任何PHP腳本的值,因為PHP是在將頁面發送到瀏覽器(即服務器端)之前解析的,並且Javascript是由瀏覽器(即客戶端)解析並執行的。

這種事情有兩種主要的實現方式。 如果您確實想影響PHP變量值,則必須重新加載頁面(例如,使用HTML表單)。 既然您說您不想這樣做,那么正如其他人所建議的那樣,您將要研究AJAX。

簡而言之,您將使用Javascript將請求發送到PHP頁面,該頁面將運行您上面的查詢(並且您可以傳遞新值以POST或GET數據的形式插入$ eu)並返回結果,您將使用它們來更新頁面上的顯示。

試試這個// PHP

$count=3;
$query= 'select * from  news order by id desc ' ;
$limit_str=" limit 0,$count";

if(isset($_POST['page']))
{
    $lim=$_POST['page'];
    $offset=$lim[0]*$count; 
    $lim_str=" limit $offset, $count";
    $query.=$lim_str;
}

//形成

<form method='post' >
< input type='submit' name='page[]' value='1' />
< input type='submit' name='page[]' value='2' />
< input type='submit' name='page[]' value='3' />
</form>


<?php
// Display logic
?>

暫無
暫無

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

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