2013-03-08 113 views
1

我的控制器使用我的JQuery Ajax方法有一些问题。似乎它找不到控制器,我似乎无法摆脱index.php。Ajax访问codeigniter控制器

它在我的MAMP本地主机上正常工作,但是当我上传项目直到webhost,apache 2.2.16(debian)。我的ajax无法访问控制器。

我不断收到此错误:

<title>404 Not Found</title> 
</head><body> 
<h1>Not Found</h1> 
<p>The requested URL /home/stud/xxxxx/public_html/revy/index.php/$ was not found on this 
    server. </p 

阿贾克斯,可以从位于笨应用程序文件夹以外的文件访问和负载。

这是错误消息我得到的,

我的代码如下所示:

PHP:

public function loggInn_Ajax(){ 
    $response = ''; 
    if($this->input->post('ajax')){ 
     $this -> form_validation -> set_rules('brukernavn', 'Brukernavn', 
    'trim|required'); 
     $this -> form_validation -> set_rules('passord', 'Passord', 'required'); 

     if($this->form_validation->run()){ 

      $brukernavn = $this->input->post('brukernavn'); 
      $passord = $this->input->post('passord'); 
      $aktiveringskode = $this->input->post('aktiveringskode'); 

      if($aktiveringskode != ''){ 
       $aktivering = $this->bitauth->activate($aktiveringskode); 

       if($aktiveringskode == FALSE){ 
        $response = 'Feil aktiveringskode, om du har tastet 
        riktigkode.Ta kontakt med systemansvarlig.'; 
       } 
      } 

      $remember_me = ''; 

      $res = $this->bitauth->login($brukernavn, $passord, $remember_me); 

      if($res === 'inaktiv'){ 
       $response = 'inaktiv'; 
      } else if($res == TRUE){ 
       $response = 'ok'; 
      }else{ 
       $response = $this->bitauth->get_error(); 
      } 

     }else{ 
      $response = validation_errors(); 
     } 
    } 
     echo $response; 
    } 

AJAX:

function loggInn() { 

brukernavn = $('#brukernavn').val(); 
passord = $('#passord').val(); 
husk_meg = $('#husk_meg').val(); 
aktiveringskode = $('#aktiveringskode').val(); 

sendLoggInnnData(); 
return false; 

} 

    function sendLoggInnnData(){ 

var logginn = { 
    'brukernavn': brukernavn, 
    'passord': passord, 
    'husk_meg': husk_meg, 
    'aktiveringskode': aktiveringskode, 
    'ajax': 1 
}; 

$.ajax({ 
    url : 'MetodeKontroller/loggInn_Ajax', 
    type: 'POST', 
    data: logginn, 
    success:function(response) { 
     if(response == 'inaktiv'){ 
      $('#aktiveringsfelt').html("<input name='aktiveringskode' 
     id='aktiveringskode' class='input-block-level' type='text' value='' required='required' 
     placeholder='Aktiveringskode' autofocus='autofocus' onblur='validerInput(this)'  
     maxlength='6' min='6'>"); 

      $('#aktiveringskode').focus(); 
     }else if(response == 'ok'){ 
      window.location.href = "SideKontroller"; 
     }else{ 
      $('#alerts').html(alert_error+response+'</div>'); 
     } 
    } 

}); 
    } 

回答

0
$config['base_url'] = 'http://'.$_SERVER['SERVER_NAME'].'/ProjectFolderName'; 

试试这个

<?php 
var url = '<?php echo base_url();?>'; 
?> 

和AJAX使用这样的:

$.ajax({ 
    type:'POST', 
    url:url+"MetodeKontroller/loggInn_Ajax", 
相关问题