Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用带有javascript参数的javascript调用PHP函数_Javascript_Php_Ajax_Function_Parameters - Fatal编程技术网

使用带有javascript参数的javascript调用PHP函数

使用带有javascript参数的javascript调用PHP函数,javascript,php,ajax,function,parameters,Javascript,Php,Ajax,Function,Parameters,我有一个简单的javascript,可以完美地调用PHP函数: var showFeedPHP = "<?php showFeed($link, $category, $siteVersion, $cookie_index, $myuserlevel, $perPage, $showFrom); ?>"; $( "#sectionPosts" ).append( ""+showFeedPHP+"" ); var showFeedPHP=”“; $(“#sectionPosts”).

我有一个简单的javascript,可以完美地调用PHP函数:

var showFeedPHP = "<?php showFeed($link, $category, $siteVersion, $cookie_index, $myuserlevel, $perPage, $showFrom); ?>";
$( "#sectionPosts" ).append( ""+showFeedPHP+"" );
var showFeedPHP=”“;
$(“#sectionPosts”).append(“+showFeedPHP+”);
我希望最后一个参数$showFrom是一个javascript变量

但是,此版本不起作用,只将最后一个参数设置为文本字符串“+showFromJS+”:

var showFromJS=10;
var showFeedPHP=“”;
$(“#sectionPosts”).append(“+showFeedPHP+”);

我想使用javascript变量来声明一个php函数参数,但是如何声明呢?

在本例中,您必须使用Ajax这里是一个示例

    var showdeed= function(id) {
        $.ajax({
            url: 'path/to/php/file/showFeed',
            type: 'GET',
            data: {link:link,
          category:category,...},
            success: function(data) {
                $( "#sectionPosts" ).append( ""+data+"" );

            }
        });

};

您必须使用AJAX来实现您的目标

function loadData() {
    $.ajax({
    url: "path_to_showfeed.php?var1="+<?php echo json_encode($link);?>+"&var2="+<?php echo json_encode($category);?>+"&var3="....
    }).done(function(data) { 
    $( "#sectionPosts" ).append( ""+data+"" );
   });

 }
函数loadData(){
$.ajax({
url:“指向showfeed.php的路径?var1=“++”&var2=“++”&var3=“。。。。
}).done(函数(数据){
$(“#分区所”)。追加(“+数据+”);
});
}
同时将这一行添加到您的头部部分

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>


谢谢你的回答;我希望这可以通过我使用的php函数调用来实现——因为我在其他地方使用了这个php函数(作为一个真正的php函数,这意味着我在传统上使用php来调用它)。AJAX方法要求当前PHP函数中的内容不再是函数——这意味着我必须复制该功能(使用两个文件;一个作为函数,另一个用于AJAX),或者将函数调用更改为fx。“include()或require()”一词。我希望避免这种情况……AJAX的使用根本不要求更改PHP函数@jakobdam您可以将一个PHP函数放在一个文件中,该文件可以从任何页面上的任何AJAX请求调用。@jakobdam正确地说,您可以创建另一个PHP文件,并将所需的PHP函数放在该PHP文件中。另外,我在创建不同的文件时没有发现任何问题。谢谢你的回答;我希望这可以通过我使用的php函数调用来实现——因为我在其他地方使用了这个php函数(作为一个真正的php函数,这意味着我在传统上使用php来调用它)。AJAX方法要求当前PHP函数中的内容不再是函数——这意味着我必须复制该功能(使用两个文件;一个作为函数,另一个用于AJAX),或者将函数调用更改为fx。“include()或require()”一词。我希望能避免…顺便说一句。我最终使用了您在这里展示的方法,使用POST而不是GET的微小变化。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>