为了账号安全,请及时绑定邮箱和手机立即绑定

ajax数据在MVC的控制器功能中变得空

ajax数据在MVC的控制器功能中变得空

PHP
慕工程0101907 2023-03-26 14:16:54
我是 ajax 和 MVC 框架的初学者。我必须使用 ajax 找到移动存在或不存在。我试过下面的代码。看法if(mno.match(phoneno)){//alert(mno); $.ajax({              url: "/api/sales/existmobile",              type:"POST",              //ContentType: 'application/json',             // dataType: "json",              //async: false,              //data:{'data': mno},              //data:{data: JSON.stringify(mno)},              data:{data: JSON.stringify(6547655566)},              success: function (data, textStatus, jqXHR) {                 console.log('success',data);                    if(data === false){                    alert('Mobile number already exists!');                    $( "#custmobilenumber" ).focus();                    }                            },                error: function (jqXHR, textStatus, errorThrown) {                  console.log(textStatus);              }        });}  路线case "sales/existmobile":            $sale = new Sale($data);            $result = $sale->checkMobileExistSale($result);            break;控制器public function checkMobileExistSale($result)    {        print_r($this->data);        // $custMdl = new CustomerModel();        //  $mobileExistResult = $custMdl->checkMobileExist($this->data);        // return $mobileExistResult;    }模型public function checkMobileExist($mobile){        $sql          = 'SELECT * FROM customers WHERE mobile= :mobile';        $placeholders = [':mobile'=>$mobile];        $users = $this->select($sql, $placeholders);        if (count($users) > 0) {            return false;        } else {            return true;        }    }当我打印在控制器中传递的 ajax 数据时,它就会变为空。在检查的 Network(XHR)->Headers->form data 中,我可以看到从 ajax 传递的数据。但是 Network(XHR)->Response,它显示为空。我用 stackoverflow anwsers 和谷歌搜索找到的所有可能方法进行了调试,但没有用。我不知道代码哪里出错了。请帮助和指导。提前致谢。
查看完整描述

2 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

在 ajax 中你使用的是 post 方法,那么你必须在控制器中使用

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

试试这个对你有用


查看完整回答
反对 回复 2023-03-26
?
繁星coding

TA贡献1797条经验 获得超4个赞

我已经为您的问题编写了一个可能的修正代码,我在必要时提到了评论,看看它是否对您有帮助。:)


路线


case "sales/existmobile":

            $sale = new Sale($data);

            $result = $sale->checkMobileExistSale($data); // send $data here not $result

            break;

控制器


public function checkMobileExistSale($result)

    {

        echo $result;

        // print_r($result);

        // or try $result = $this->input->post();


        // $custMdl = new CustomerModel();

        //  $mobileExistResult = $custMdl->checkMobileExist($result); // send relevant data here

        // return $mobileExistResult;

    }


查看完整回答
反对 回复 2023-03-26
  • 2 回答
  • 0 关注
  • 67 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信