Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.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
如何使用jQuery/javascript从一个文件到另一个文件获取php变量?_Javascript_Php_Jquery_Ajax_Modal Dialog - Fatal编程技术网

如何使用jQuery/javascript从一个文件到另一个文件获取php变量?

如何使用jQuery/javascript从一个文件到另一个文件获取php变量?,javascript,php,jquery,ajax,modal-dialog,Javascript,Php,Jquery,Ajax,Modal Dialog,所以,我试图解决一个非常简单的问题,但4小时后的大部分时间我仍然不知道。 我只想获取变量z并将其转换为php,以便在数组中使用该值。目前,我已经成功地将另一个文件中的值转换为php,现在我需要将其返回到原始文件以供使用,这就是我遇到的问题。我已经在下面包含了相关代码 orders2.php获取javascript值z,并使用另一个文件使其成为php (function($) { $(document).on('click', '.rowclick',function() {

所以,我试图解决一个非常简单的问题,但4小时后的大部分时间我仍然不知道。 我只想获取变量z并将其转换为php,以便在数组中使用该值。目前,我已经成功地将另一个文件中的值转换为php,现在我需要将其返回到原始文件以供使用,这就是我遇到的问题。我已经在下面包含了相关代码

orders2.php获取javascript值z,并使用另一个文件使其成为php

(function($) {  

    $(document).on('click', '.rowclick',function() {
        var z = 2;
        alert(z);


    var post = $.post('../../wp-content/themes/alma-child/includes/modes.php',{z:z});
    post.done(function(data){

    <?php 
         $rownum = $_GET['z2'];
         echo "nei";
    ?>

    })
      $("#myModal1").modal();       

        });


    })(jQuery);
(函数($){
$(文档).on('click','rowclick',function(){
var z=2;
警报(z);
var post=$.post('../../wp content/themes/alma child/includes/modes.php',{z:z});
post.done(功能(数据){
})
$(“#myModal1”).modal();
});
})(jQuery);
orders2.php中的模态部分

<div id="myModal1" class="modal" tabindex="-1">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-body">
            <div class="account_modal_body">
                <button class="close" type="button" data-dismiss="modal">Close Window</button>
                <div id="missing">
                    <form action="#" id="form" method="post" name="form">
                        <div id="printthis">
                            <h2>Track Mastering Details</h2>
                            <label>Track Name</label>
                            <div class="subsec">
                                <?php echo $waiting[$z2][0] ?>
                            </div>
                            <label>Artist</label>
                            <div class="subsec">
                                <?php echo $waiting[$z2][1] ?>
                            </div>
                            <label>Duration</label>
                            <div class="subsec">
                                <?php echo $waiting[$z2][2] ?>
                            </div>
                            <label>ISRC</label>
                            <div class="subsec">
                                <?php echo $waiting[$z2][3] ?>
                            </div>
                            <label>Mastering Notes</label>
                            <div class="subsec">
                                <?php echo echo $waiting[$z2][4] ?>
                            </div>
                        </div>
                    </form>

                </div>
                <button class="close" id="print" type="button">Print</button>
                </br>
            </div>
        </div>

    </div>
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->

关窗
跟踪控制细节
音轨名称
艺术家
期间
ISRC
掌握笔记
印刷品

modes.php打开另一个文件 这段代码肯定是不正确的,我试图从前面的一个解决方案中获取jQuery,但不确定它是如何工作的

<?php $z2=$ _POST['z']; ?>
<div id="uploads">
    <?php echo $z2; ?>
</div>

<script>
    jQuery('#uploads').load('orders2.php?account=<?php echo($z2);?>');
</script>

jQuery('#uploads').load('orders2.php?account=');
注意事项:
我意识到这可能不是最好的方法,因此任何其他将javascript变量转换为php的解决方案都将不胜感激。另外,我想说的是,如果页面可以不刷新(因此是javascript)

正如您已经知道的那样,它不会像现在这样工作,但让我试着解释一下原因。这里有一些概念性的问题会一直阻碍你,直到你理解它们

PHP与JavaScript的混合 您需要了解的最重要的事情是如何混合JavaScript和PHP。这是巨大的。您可以将JavaScript和PHP放在同一个文件中,但不能按您认为的方式。让我给你看看

下面是一个使用jQuery的简单PHP文件。它同时包含JavaScript和PHP

(function($) {
    $('#test-button').click(function() {
        <?php echo 'This is a test'; ?>
    });
})(jQuery);
看到了吗?没有PHP标签!在JavaScript有机会运行之前,PHP已经被执行了。PHP是由服务器预先运行的。(在这种情况下,浏览器中会出现错误。
这是一个测试
不是有效的JavaScript!)

如何在PHP和jQuery之间共享数据 因此,如果PHP在服务器上运行,那么如何在jQuery和PHP之间共享数据?答案是使用
$.post
,您已经在这样做了。你只需要稍微调整一下。这里有一个例子

假设我有下面的JavaScript。我想问服务员玛丽最喜欢的颜色。当服务器告诉我时,我想显示一个警报,说明它是什么。下面是如何在JavaScript文件中实现这一点。假设它在index.php中,在
脚本
标记中

(function($) {
    var name = "Mary";
    $.post("color.php", { person: name })
    .done(function(data) {
        alert(data.name + "'s favorite color is " + data.color + "!");
    });
})(jQuery);
您会注意到,我们还引用了一个PHP文件,
color.PHP
。所以我们也必须创造这个。下面是color.php中的代码可能的样子:

<?php
$people = array(
    'Eric' => 'blue',
    'Freddie' => 'orange',
    'Mary' => 'blue',
    'Pedro' => 'green'
);

echo json_encode(array(
    'name' => $_POST['person'],
    'color' => $people[$_POST['person']],
));
然后,第一个代码段中的代码可能如下所示:

(function($) {
    $('#test-button').click(function() {
        This is a test
    });
})(jQuery);
// ...

var post = $.post('../../wp-content/themes/alma-child/includes/modes.php',{z:z})
.done(function(data){
    alert(data.title);
});

// ...
结论 简而言之,从jQuery发布到
modes.php
在服务器上运行并返回一个值。然后,jQuery中的回调可以使用该值执行任何您想要的操作


我希望这是有道理的!请随便问我这里发生了什么。

正如你已经知道的,它不会像现在这样工作,但让我试着解释一下原因。这里有一些概念性的问题会一直阻碍你,直到你理解它们

PHP与JavaScript的混合 您需要了解的最重要的事情是如何混合JavaScript和PHP。这是巨大的。您可以将JavaScript和PHP放在同一个文件中,但不能按您认为的方式。让我给你看看

下面是一个使用jQuery的简单PHP文件。它同时包含JavaScript和PHP

(function($) {
    $('#test-button').click(function() {
        <?php echo 'This is a test'; ?>
    });
})(jQuery);
看到了吗?没有PHP标签!在JavaScript有机会运行之前,PHP已经被执行了。PHP是由服务器预先运行的。(在这种情况下,浏览器中会出现错误。
这是一个测试
不是有效的JavaScript!)

如何在PHP和jQuery之间共享数据 因此,如果PHP在服务器上运行,那么如何在jQuery和PHP之间共享数据?答案是使用
$.post
,您已经在这样做了。你只需要稍微调整一下。这里有一个例子

假设我有下面的JavaScript。我想问服务员玛丽最喜欢的颜色。当服务器告诉我时,我想显示一个警报,说明它是什么。下面是如何在JavaScript文件中实现这一点。假设它在index.php中,在
脚本
标记中

(function($) {
    var name = "Mary";
    $.post("color.php", { person: name })
    .done(function(data) {
        alert(data.name + "'s favorite color is " + data.color + "!");
    });
})(jQuery);
您会注意到,我们还引用了一个PHP文件,
color.PHP
。所以我们也必须创造这个。下面是color.php中的代码可能的样子:

<?php
$people = array(
    'Eric' => 'blue',
    'Freddie' => 'orange',
    'Mary' => 'blue',
    'Pedro' => 'green'
);

echo json_encode(array(
    'name' => $_POST['person'],
    'color' => $people[$_POST['person']],
));
然后,第一个代码段中的代码可能如下所示:

(function($) {
    $('#test-button').click(function() {
        This is a test
    });
})(jQuery);
// ...

var post = $.post('../../wp-content/themes/alma-child/includes/modes.php',{z:z})
.done(function(data){
    alert(data.title);
});

// ...
结论 简而言之,从jQuery发布到
modes.php
在服务器上运行并返回一个值。回调