[英]Call AJAX from a PHP script
我知道我可以在處理AJAX請求后調用PHP腳本,但是我可以用其他方式做到這一點嗎?
我正在為新網站編寫動態大小的導航組件,並且每次將新項目添加到菜單時都想刷新導航。
在我的菜單類中,我目前正在考慮使用這種方法來實現效果:
public static function new_item($label, $link) {
$pos = self::num_items();
$DB = Database::getInstance();
$query = $DB->connection->prepare("INSERT INTO menu VALUES('', :label, :link, :pos )");
$query->execute(array(':label'=>$label,
':link' =>$link,
':pos' =>$pos+=1
));
?>
<script>
function refreshHeader() {
$.ajax({
type: "GET",
url: "my url",
success: function() {
// refresh the header here somehow
}
});
}
</script>
<?php
}
但是,每次運行時,我在控制台中都看不到任何東西(即使我將有效的url放入函數中),也可以實現我想要的功能,還是可以更好地處理通過AJAX將選項卡附加到文檔中然后在成功回調的菜單類中調用insert方法?
我問的唯一原因是,我覺得與其他處理方式相比,這種方式看起來更整潔,盡管我可能完全錯了。
任何反饋將不勝感激-亞歷克斯歡呼。
回顯以下行可以調用現有的javascript函數,您甚至可以插入變量(盡管只能是字符串和整數)。
echo "<style onload='jsfunction(\"$vars\")'></style>";
我發現這是快速完成此操作的最簡單方法之一。
哦,我現在知道您想做什么,您需要的是websockets。 當執行一段php代碼(服務器端)時,您希望瀏覽器(客戶端)中發生一些事情。 看看如何使用javascript和websocket,長時間輪詢和其他類似方法進行實時聊天,這就是您所需要的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.