PHP将数据发布到两个不同的页面

时间:2013-11-17 19:32:39

标签: php jquery

如何在PHP中将相同的数据发布到2个页面,我需要在index.php和load_page.php中选择数据库中的数据

我尝试这样做:

<a href="index.php?cat=Gadgets && pag/load_data.php?cat=Gadgets" title="Common">

感谢

3 个答案:

答案 0 :(得分:0)

如果您想将数据发送到2个不同的页面而不将用户重定向到2页,您应该看看带有jQuery的AJAX

如果你想用GET数据打开2个页面,你可以使用jQuery轻松完成。让jQuery听取链接上的用户点击并打开一个新标签。

像(未经测试)

之类的东西
<script>
$(document).ready(function(){

 $('#link').bind('click', function(){

    window.open(url2, '_blank');
 });

});

</script>

<a href='mypage.php?data=bla&data2=bleh' id='link'>GO</a>

答案 1 :(得分:0)

将相同的数据发送到2个不同的页面并没有多大意义,但是如果必须这样做,我可以想到2个直接选项。

  1. 使用jQuery Ajax并发出2个单独的请求 - 如前所述
  2. 使用cURL发出2个帖子请求。
  3. 以下是“未经测试的”cURL选项

    <?php
    
    ## Data - from form or other source.
    $data = array(
        "name"      => "c.bavota",
        "website"   => "http://bavotasan.com",
        "twitterID" => "bavotasan"
    );
    
    ## Send data to 1 or more pages and collect responses.
    $response_from_page1 = post_to_url("http://yoursite.com/page1.php", $data);
    $response_from_page2 = post_to_url("http://yoursite.com/page2.php", $data);
    
    
    ## Function to make the POST requests.
    function post_to_url($url, $data) {
        $fields = '';
        foreach($data as $key => $value) { 
        $fields .= $key . '=' . $value . '&'; 
        }
    rtrim($fields, '&');
    
    $post = curl_init();
    curl_setopt($post, CURLOPT_URL, $url);
    curl_setopt($post, CURLOPT_POST, count($data));
    curl_setopt($post, CURLOPT_POSTFIELDS, $fields);
    curl_setopt($post, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($post);
    curl_close($post);
    return $result;
    }
    ?>
    

    每个页面都会返回一个文本字符串,可能是真或假,具体取决于具体的应用程序。

    这是另一个教程中稍微修改过的代码。

    来源: http://bavotasan.com/2011/post-url-using-curl-php/

答案 2 :(得分:0)

我是这样做的

<script type="text/javascript">
            $(document).ready(function(){

                    $.urlParam = function(name){
                     var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
                    if (!results) { return 0; }
                    return results[1] || 0;
                        }

                function loading_show(){
                    $('#loading').html("<img src='images/loading.gif'/>").fadeIn('fast');
                }
                function loading_hide(){
                    $('#loading').fadeOut('fast');
                }                
                function loadData(page){
                    loading_show(); 
                    caty = $.urlParam('cat');
                    $.ajax
                    ({
                        type: "POST",
                        url: "pagination/load_data.php",
                        data: {page: page, cat:  caty},
                        success: function(msg)
                        {
                            $("#container").ajaxComplete(function(event, request, settings)
                            {
                                loading_hide();
                                $("#container").html(msg);
                            });
                        }
                    });
                }
                loadData(1);  // For first time page load default results
                $('#container .pagination li.active').live('click',function(){
                    var page = $(this).attr('p');
                    loadData(page);

                });           
                $('#go_btn').live('click',function(){
                    var page = parseInt($('.goto').val());
                    var no_of_pages = parseInt($('.total').attr('a'));
                    if(page != 0 && page <= no_of_pages){
                        loadData(page);
                    }else{
                        alert('Enter a PAGE between 1 and '+no_of_pages);
                        $('.goto').val("").focus();
                        return false;
                    }

                });
            });
        </script>

其中cat:caty是使用此函数从URL caty = $.urlParam('cat');获得的

 $.urlParam = function(name){
                         var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
                        if (!results) { return 0; }
                        return results[1] || 0;
                            }

page是从同一页面发送的page分页数据index.php

page(来自index.php)和caty获取(通过链接点击从另一个页面获取),将被发送到pagination/load_data.php中的脚本分页。

在这种情况下,我可以根据类别和数量/页面选择过滤数据以进行分页。