从PHP脚本调用AJAX
我知道我可以在处理AJAX请求后调用PHP脚本,但我是否可以用另一种方式呢 我正在为一个新网站编写一个动态大小的导航组件,我想在每次菜单中添加新项目时刷新导航 在我的菜单课程中,我目前正在考虑使用这种方法来实现以下效果:从PHP脚本调用AJAX,php,ajax,Php,Ajax,我知道我可以在处理AJAX请求后调用PHP脚本,但我是否可以用另一种方式呢 我正在为一个新网站编写一个动态大小的导航组件,我想在每次菜单中添加新项目时刷新导航 在我的菜单课程中,我目前正在考虑使用这种方法来实现以下效果: public static function new_item($label, $link) { $pos = self::num_items(); $DB = Database::getInstance(); $query = $
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
}
公共静态函数新项($label,$link){
$pos=self::num_items();
$DB=数据库::getInstance();
$query=$DB->connection->prepare(“插入菜单值(“”,:label,:link,:pos)”);
$query->execute(数组(':label'=>$label,
':link'=>$link,
':pos'=>$pos+=1
));
?>
函数refreshHeader(){
$.ajax({
键入:“获取”,
url:“我的url”,
成功:函数(){
//在这里刷新标题
}
});
}
哦,我现在明白你想做什么了,你需要的是WebSocket。当一段php代码(服务器端)被执行时,你希望在浏览器(客户端)中发生一些事情。看看如何使用javascript和WebSocket、长轮询和其他类似方法进行实时聊天,这就是你在这里需要的
这对我有很大的帮助重复下面的一行可以调用现有的javascript函数,甚至可以插入变量(尽管只有字符串和int)
echo”“;
我发现这是最简单的快速实现方法之一。为什么不使用CURL?CURL做什么?这没有任何意义。@AndreiCristianProdan CURL?很抱歉,我离开web有一段时间了,这会给我带来什么好处?通过“刷新标题”你的意思是重新加载表示标题的HTML部分,对吗?如果是,那么你需要在初始的$中返回新的HTML部分。ajax
调用并在成功回调中用新的替换旧的。@SergiuParaschiv这正是我想要做的,谢谢它是不可见的,它可以工作:P如果我使用它,我喜欢抛出It在页面上隐藏的div中,只是为了确定。
echo "<style onload='jsfunction(\"$vars\")'></style>";