首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用ajax将数据从视图传递到控制器

使用ajax将数据从视图传递到控制器
EN

Stack Overflow用户
提问于 2013-10-25 18:17:52
回答 2查看 1.6K关注 0票数 1

我目前正在做一个应用程序,它使用ajax从表单域获取用户输入,然后将其连接到一个字符串中,这很好用,但我得到一个"POST 500 (内部服务器错误“)

并且不能传递数据。如何使用ajax将字符串从视图传递到控制器并在控制器中访问它。

以下是我的代码:

脚本

代码语言:javascript
运行
复制
<script>
 // $(document).ready(function(){
 function saveData(){
 var con =  document.getElementById('tiks').value;
 // var dataString = {'conid':con};
  alert(con);
  var cct = $("input[name=csrf_token_name]").val();

  var base_url = <?php base_url(); ?>;

  $.ajax({
      url: base_url + "welcome/newShortestPath",
      type: "POST",
      data: {'conid':con, 'csrf_token_name':cct},
      success:function(){
        alert("SUCCESS KALUY-I   "+con);
        $('#myForm')[0].reset();
      }
  });
   }

控制器

代码语言:javascript
运行
复制
public function newShortestPath(){
    echo "REACHED";
    $var = $this->input->post('conid');
    //$this -> load -> model('edge_model');
    //$this->edge_model->setConstraints();

}

真的需要你们的帮助。提前谢谢。:)

更新

通过修复调用base_url()函数时的错误,我不再收到任何错误,但同时我无法获取传递的数据,是否有其他方法将数据从post获取到控制器?

EN

回答 2

Stack Overflow用户

发布于 2013-10-25 18:26:34

您必须对base_url执行echo操作并使用''包装您的var

代码语言:javascript
运行
复制
var base_url = '<?php echo base_url(); ?>';

更新

基于您得到的错误,即:

致命错误:调用未定义的函数base_url()

正如你在评论中提到的。

你要做的就是去application/config/autoload.php上找到

代码语言:javascript
运行
复制
$autoload['helper'] = array();

然后将其更改为

代码语言:javascript
运行
复制
$autoload['helper'] = array('url');

或者手动加载url辅助对象:

代码语言:javascript
运行
复制
$this->load->helper('url');

阅读更多here

票数 2
EN

Stack Overflow用户

发布于 2013-10-25 20:21:39

提示:

提示1:你可以设置所有的url:

代码语言:javascript
运行
复制
var url = <?php echo site_url('welcome/newShortestPath'); ?>;

提示2:使用site_url()代替base_url()。base_url必须用于资源(img、css、js等)要构建URL,请使用site_url()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19587123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档