2014-06-15 76 views
1

我有問題如何解決codeigniter中的ajax後。 GET方法運行良好,但當我將其更改爲發佈時,它不再有效。我觀察到,當我在配置文件中禁用了我的csrf_protection時,它正在工作,但是當我啓用它時,它不工作。我想在post方法運行時啓用csrf_protection。有誰能夠幫助我?謝謝..ajax後發送不工作codeigniter

<script> 
$(document).ready(function(){ 
    $('#submit').click(function(event) { 
    $.ajax({ 
     type: 'POST', 
     url: '/common/test', 
     data: { 
      <?php if ($this->config->item('csrf_protection') === true) : ?> 
       post_data.<?php echo $this->security->get_csrf_token_name()?> = '<?php echo $this->security->get_csrf_hash()?>' 
      <?php endif ?> 
     }, 
     success: function(response) { 
      alert(response); 
      } 
     }); 
     return false; 
    }); 
}); 
    </script> 
<input type="text" name="name" id="name"> 
<input type="submit" value="submit" name="submit" id="submit"> 

在我的控制器

<?php if (! defined('BASEPATH')) exit('No direct script access allowed'); 

    class Common extends CI_Controller { 

    function test(){ 
     echo 'test'; 
    } 

    } 

回答