![](/img/trans.png)
[英]Changing the contents of a div using a dropdown, javascript and PHP
[英]Changing PHP output using Javascript
這是開關的javascript函數:
function switch2hecked() {
if (document.getElementById("switch2").checked)
// update mySQL query }
我的PHP代碼如下所示:
$sql = "SELECT * FROM $table WHERE day = 'mon' ORDER BY realtime";
$result = mysqli_query($con, $sql);
while($row = mysqli_fetch_array($result)) {
echo
"<div class='dtime' >".$row["displaytime"]."</div>"
."<div class='name' >".$row["name"]."</div>"
."<div class='venue' >".$row["venue"]."</div>"
."<div class='address' >".'<a href="'.$row["loc"].'"target="_blank"> '.$row["address"].'</a>'."</div>"
."<div class='signup' >".$row["signup"]."</div>"
."<div class='email' >".'<a href="mailto:'.$row["email"].'"target="_blank"> '.$row["email"].' </a>'."</div>"
."<div class='details' >".$row["details"]."</div>
<br>";
}
我需要的是通過某種方式將變量傳遞到PHP代碼中,以便可以將其用於查詢的if語句。
幫助非常感謝!
這是您的JavaScript代碼:
function switch2hecked() {
if (document.getElementById("switch2").checked) {
document.location = 'http://mydomain/api/data?switch2=1'
}
和您的PHP代碼:
if ($_GET['switch2']) {
$sql = "SELECT * FROM $table WHERE day = 'mon2' ORDER BY realtime";
} else {
$sql = "SELECT * FROM $table WHERE day = 'mon' ORDER BY realtime";
}
$result = mysqli_query($con, $sql);
while($row = mysqli_fetch_array($result)) {
echo
"<div class='dtime' >".$row["displaytime"]."</div>"
."<div class='name' >".$row["name"]."</div>"
."<div class='venue' >".$row["venue"]."</div>"
."<div class='address' >".'<a href="'.$row["loc"].'"target="_blank"> '.$row["address"].'</a>'."</div>"
."<div class='signup' >".$row["signup"]."</div>"
."<div class='email' >".'<a href="mailto:'.$row["email"].'"target="_blank"> '.$row["email"].' </a>'."</div>"
."<div class='details' >".$row["details"]."</div>
<br>";
}
當然,如果您想擁有一個更加動態的頁面,則可以使用AJAX,但這會更加復雜。
jQuery Ajax是解決方案。 這是一個例子
function switch2hecked() {
var toggle = document.getElementById("switch2").checked;
$.ajax({
type: "GET",
url: "path/to/your/page.php",
dataType: "json",
data: { enabled: toggle }
}).done(function( json ) {
// Do the magic here...
// the output of the php page will be in the json variable.
});
}
因此,您的PHP頁面將使用GET參數進行調用。
path/to/your/page.php?enabled=true
您需要將查詢結果輸出到PHP頁面中的有效JSON字符串中。 這是您可以執行的操作:
if ($_GET['enabled']) {
$sql = "SELECT * FROM $table WHERE day = 'mon2' ORDER BY realtime";
} else {
$sql = "SELECT * FROM $table WHERE day = 'mon' ORDER BY realtime";
}
$result = mysqli_query($con, $sql);
echo json_encode($result);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.