Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/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
Php 通过ajax向CI控制器发送数据_Php_Codeigniter - Fatal编程技术网

Php 通过ajax向CI控制器发送数据

Php 通过ajax向CI控制器发送数据,php,codeigniter,Php,Codeigniter,我不熟悉ajax和CI。我想通过ajax发送数据和图像。在我看来,我有3个输入字段和一个图像上传按钮 var val1 = $("#val1"+id).val(); var val2 = $("#val2").val(); $.ajax({ type: "POST", url: "page/save_data", data: "{ val1 :'"+val1+"',val2:'"+val2+"}",

我不熟悉ajax和CI。我想通过ajax发送数据和图像。在我看来,我有3个输入字段和一个图像上传按钮

var val1 = $("#val1"+id).val();
var val2 = $("#val2").val();
$.ajax({
            type: "POST",
            url: "page/save_data",
            data: "{ val1 :'"+val1+"',val2:'"+val2+"}",
            success: function(msg) {

                    alert(msg);
            }
    });
在控制器中,当我尝试这个时,它什么也没有显示

function save_data()
{
    $val = $this->input->post('val1');
    echo $val1;


}
在控制台中,它什么也不给我。

试试这个:

$.ajax({
            type: "POST",

            url: "page/save_data",
            data: { "val1 ":val1,"val2": val2},
            success: function(msg) {
                    alert(msg);
            }
    });

您的ajax URL必须引用您的方法名称

...
 $.ajax({
        type: "POST",
        url: "page/save_data", //change this to your method;
 ...
应该是:

  ...
  $.ajax({
        type: "POST",
        url: "page/save_iudata",//or whatever your method's name;
  ...
编辑:

试着这样做:

function save_data(){
  $val1 = $_REQUEST['val1'];
  echo $val1;
}

Hello通过ajax发送数据很容易:

        var data = {
            val1: $('#val1').val(),
            val2: $('#val2').val(),
        };

        $.ajax({
            url: "<?php echo base_url().'page/save_data'; ?>",
            dataType: 'json',
            type: 'POST',
            async : false,
            data: data,

            success: function(msg){
                ...
            }
        });
        return false;
var数据={
val1:$('#val1').val(),
val2:$('#val2').val(),
};
$.ajax({
url:“”,
数据类型:“json”,
键入:“POST”,
async:false,
数据:数据,
成功:功能(msg){
...
}
});
返回false;
但是要发送图像,你必须做一些研究。。。
下面是一个很好的

答案@Arvind,不要引用数据对象;请检查您正在访问的URL,并验证其是否正常?@user1224233:欢迎随时访问