2017-02-25 14 views
0

JSを使用して別のページにphp変数を送信しようとしています。これまでの私の絶望的な試み:javascriptを使用してあるページから別のページにphp変数を投稿する

header.phpの:

<script> 
    var county = "<?php echo $county; ?>"; 
    $.post("ajax.php",county); 
</script> 

がajax.php:コンテキストについては

<?php 
    $county = $_POST['county']; 
    echo $county; 
?> 

、私は無限スクロールスクリプト(http://www.inserthtml.com/2013/01/scroll-pagination/)を精緻化しようとしています。

私は現在、このスクリプトを使用して、それに追加したいのです:

(function($) { 

    $.fn.scrollPagination = function(options) { 

     var settings = { 
      nop  : 10, // The number of posts per scroll to be loaded 
      offset : 0, // Initial offset, begins at 0 in this case 
      error : 'No More Posts!', // When the user reaches the end this is the message that is 
             // displayed. You can change this if you want. 
      delay : 500, // When you scroll down the posts will load after a delayed amount of time. 
          // This is mainly for usability concerns. You can alter this as you see fit 
      scroll : true // The main bit, if set to false posts will not load as the user scrolls. 
          // but will still load if the user clicks. 

     } 



     // Extend the options so they work with the plugin 
     if(options) { 
      $.extend(settings, options); 
     } 

     // For each so that we keep chainability. 
     return this.each(function() {  

      // Some variables 
      $this = $(this); 
      $settings = settings; 
      var offset = $settings.offset; 
      var busy = false; // Checks if the scroll action is happening 
           // so we don't run it multiple times 

      // Custom messages based on settings 
      if($settings.scroll == true) $initmessage = ''; 
      else $initmessage = 'Click for more'; 

      // Append custom messages and extra UI 
      $this.append('<div class="content"></div><div class="loading-bar">'+$initmessage+'</div>'); 

      function getData() { 

       // Post data to ajax.php 
       $.post('ajax.php', { 

        action  : 'scrollpagination', 
        number  : $settings.nop, 
        offset  : offset, 



       }, function(data) { 

        // Change loading bar content (it may have been altered) 
        $this.find('.loading-bar').html($initmessage); 

        // If there is no data returned, there are no more posts to be shown. Show error 
        if(data == "") { 
         $this.find('.loading-bar').html($settings.error); 
        } 
        else { 

         // Offset increases 
         offset = offset+$settings.nop; 

         // Append the data to the content div 
         $this.find('.content').append(data); 

         // No longer busy! 
         busy = false; 
        } 

       }); 

      } 

      getData(); // Run function initially 

      // If scrolling is enabled 
      if($settings.scroll == true) { 
       // .. and the user is scrolling 
       $(window).scroll(function() { 

        // Check the user is at the bottom of the element 
        if($(window).scrollTop() + $(window).height() > $this.height() && !busy) { 

         // Now we are working, so busy is true 
         busy = true; 

         // Tell the user we're loading posts 
         $this.find('.loading-bar').html('Loading images'); 

         // Run the function to fetch the data inside a delay 
         // This is useful if you have content in a footer you 
         // want the user to see. 
         setTimeout(function() { 

          getData(); 

         }, $settings.delay); 

        } 
       }); 
      } 

      // Also content can be loaded by clicking the loading bar/ 
      $this.find('.loading-bar').click(function() { 

       if(busy == false) { 
        busy = true; 
        getData(); 
       } 

      }); 

     }); 
    } 

})(jQuery); 
var county = "<?php echo $county; ?>"; 
$.ajax({ 
    type: "POST", 
     url: "ajax.php", 
     data: {county:county}, 
     success: function (data) 
     { 
      alert(data); 
     } 
    }); 

はUPDATE:

それが今取り組んでいます。ご協力いただきありがとうございます。

答えて

0

これを試してみてください:

$.post("ajax.php", { county: county }, function(result){ 
    console.log(result); // response, if any 
}); 
0
var county = "<?php echo $county; ?>"; 
$.ajax({ 
    type: "POST", 
     url: "ajax.php", 
     data: {county:county}, 
     success: function (data) 
     { 
      alert(data); 
     } 
    }); 

このコードを使用してください、それは

+0

あなたの答えをありがとう、私は私の質問を更新しました。あなたのコードを追加しましたが、動作させることができません。 – Chris

0

は、あなたが正確に

を何をしたいのか、いくつかの詳細やごajax jQuery for pluginを使用することができ、最も簡単な方法を教えてください動作します

$('#myForm').ajaxForm(function(response){ 
    //Print response 
    $('#ResultDiv').html(response); 
}); 
+0

あなたの答えをありがとう、私は私の質問を更新しました。 – Chris

関連する問題