2012-08-01 132 views
0

我一直在嘗試使用ajax發佈某些內容,但我得到Failed to load resource: the server responded with a status of 500 (Internal Server Error)。網站上使用Ajax工作的所有其他表單都是唯一發生錯誤的表單。不知道發生了什麼...也許有人會注意到我不是。Codeigniter - 嘗試發佈ajax時出現內部服務器錯誤

的jQuery (USER_ID在視圖中已經定義。警報返回一切我需要傳遞給控制器​​)​​

$('.one_add').submit(function(e) { 
      e.preventDefault(); 

      var formID = $(this).attr('id'); 
      var formIDSplit = formID.split('-'); 
      var oneID = formIDSplit[1]; 

      var url = $('.one-link-'+oneID).val(); 
      var desc = $('.one-link-desc-'+oneID).val(); 

      $.post(base_url + "index.php/home/one_link", { user_id : user_id, one_id : oneID, desc : desc, url : url }, function(data) 
      { 
      }, "json"); 

//    alert(user_id+'-'+oneID+'-'+desc+'-'+url); 
}); 

形式

<?php 
     $attributes = array('class' => 'one_add', 'id' => 'add-'.$job->id.''); 
     echo form_open('ajax/add_one_link', $attributes); ?> 
     <input type="text" class="one-link-<? echo $job->id; ?>" value="Url" /> 
     <input type="text" class="one-link-desc-<? echo $job->id; ?>" value="Description" /> 
     <button type="submit">Go!</button> 

<?php echo form_close(); ?> 

控制器功能

function one_link() 
    { 
      $this->load->model('one_add_model'); 

      $this->form_validation->set_rules('user_id', 'trim|required|xss_clean'); 
      $this->form_validation->set_rules('url', 'trim|required|xss_clean|strtolower'); 
      $this->form_validation->set_rules('desc', 'trim|required|xss_clean|strtolower'); 
      $this->form_validation->set_rules('one_id', 'trim|required|xss_clean'); 

      $user_id = $this->input->post('user_id'); 
      $url = $this->input->post('url'); 
      $desc = $this->input->post('desc'); 
      $one_id = $this->input->post('one_id'); 

      $this->one_add_model->add_url($user_id, $url, $desc, $one_id); 
    } 

該模型

function add_url($user_id, $url, $desc, $one_id); 
{ 
    $query_str = "INSERT INTO one_add (`user_id`, `url`, `desc`, `one_id`) VALUES (?, ?, ?, ?)"; 
    $this->db->query($query_str, array($user_id, $url, $desc, $one_id)); 
} 
+0

是的,錯誤消息已打開。這是導致問題的唯一形式。我用其他形式進行了一些測試,其中我故意破壞了某些內容,並給出了錯誤消息。 – Ciprian 2012-08-01 05:01:33

回答

1

這終於露出

Message: Undefined property: Home::$form_validation 

而我只是其中加載未加載的形式validaton。但它在另一個控制器中,導致了同樣的錯誤。不知道發生了什麼......但它現在起作用。

  $this->load->library('form_validation'); 
0

您需要刪除;從add_url函數定義

變化

function add_url($user_id, $url, $desc, $one_id); 

function add_url($user_id, $url, $desc, $one_id) 
+0

這是一個錯誤......但它並沒有解決這個錯誤。謝謝 – Ciprian 2012-08-01 04:58:17

+0

任何機會,你有控制器或模型上的其他語法錯誤? – 2012-08-01 05:00:34

+0

該模型只有一個功能,所以沒有太多的代碼,它看起來很好。除了這一種形式,一切在控制器中都可以正常工作。 – Ciprian 2012-08-01 05:03:51

相關問題