簡體   English   中英

php codeigniter Ajax發布

[英]php codeigniter ajax post

我對ajax post到codeigniter控制器有問題。 它起作用但不發布數據。 為什么ajax無法成功發布數據?

這是我的控制器:

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

class Main extends CI_Controller{

    public function index(){
        $this->load->helper('url');
        $this->load->view('index');
    }

    public function login(){
        if ($_POST) {
            $kAdi = $this->input->post('kAdi');
            echo json_encode("done!");
        }
    }
}?>

我的Ajax代碼:

function girisYap(){

var kAdi = $("#username").val();
var parola = $("#password").val();    

$.ajax({
      type:"POST",
      url: "<?php echo base_url(); ?>" + "/main/login",
      data:  "kAdi="+kAdi,
      dataType: 'json',
      success : function(cevap){
        alert("successfull"); 
      }
  });
}

我想念什么嗎?

我解決了這個問題,謝謝大家。 這是作品代碼:

控制器

public function login(){
        if ($_POST) {
            $kAdi = $this->input->post('kAdi');
            echo json_encode("done!");
        }

Ajax功能:

function girisYap(){
var $_base_url = '<?=base_url()?>';
var kAdi = $("#username").val();
var parola = $("#password").val();

alert($_base_url+"main/login");
$.ajax({
  type:"POST",
  url: $_base_url + "main/login",
  data:  {kAdi: kAdi},
  dataType: 'json',
  success : function(cevap){
     alert(cevap); 
    }
  });

}

不要將/放在main/login之前,因為基本url = localhost/codeigniter/末尾有一個斜杠。 如果放斜線,它將成為codeigniter // main。

因此,感謝您的所有回答。

試試這個

function girisYap(){

var kAdi = $("#username").val();
var parola = $("#password").val();


$.ajax({
      type:"POST",
      url: "<?php echo base_url(); ?>/main/login",
      data:{kAdi: kAdi},
      dataType: 'json',
      success : function(cevap){

        alert("successfull"); 

      }
});

}

發布數據應如下所示

data: { name: "John", location: "Boston" }

不喜歡

  data:  "kAdi="+kAdi,

同時打印URl並檢查其是否訪問

用這個

    $.post("<?php echo base_url() ?>main/login",
    {
       kAdi: kAdi                
    },
    function(cevap){
    console.log(cevap.trim());
    if(cevap){
     alert(cevap);
     alert("sucessful");
    }
    });

另一方面在控制器中,使用此

$this->input->post('kAdi');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM