2017-08-15 39 views
0
$('#loginForm').attr('action', '<?php echo base_url(); ?>index.php/login/identifying_usertype'); 

var url = $('#signinForm').attr('action'); 

var email = $('#loginEmail').val(); 
var password = $('#loginPass').val(); 

var postData = { 
       'email' : email, 
       'password' : password 
       }; 

$.ajax({ 
        type: "POST", 
        url : url, 
        data : postData, 
        success: function(response){ 

         alert(data); 

         }, 
         error: function (XHR, status, error){ 
          console.log('error', error); 
         } 
        }); 

我的控制檯上有一個錯誤,它說未捕獲的ReferenceError:數據沒有定義。當我的數據在postData數組上可能是什麼問題在這一個我怎麼可以訪問我的控制器上的這些數據我怎樣才能從我的ajax訪問這個數據到我的控制器

+0

@大衛我評論說,警報acccess POST數據我真正想要做的是在控制器上訪問這些變量,你有什麼想法? – Lestah

+0

你檢查過你的變量url,email,password的值嗎?他們是否正確? – Vickel

+0

如果你的響應是一個json,你應該添加數據類型到你的ajax調用。在你的控制器/模型中返回你的數據。 –

回答

1

這與控制器或任何服務器端代碼沒有任何關係。您只需在您正在嘗試使用一個變量不存在的功能:

function(response){ 
    alert(data); 
} 

data變量不被任何定義。如果你正在檢查該響應,那麼可以肯定你的意思是提醒response變量,而不是?:

function(response){ 
    alert(response); 
} 

當然,如果response是任何超過原始值,那麼這可能不會顯示有用的結果。相反,您可以登錄response到控制檯,並查看其詳細信息,在瀏覽器的調試控制檯:

function(response){ 
    console.log(response); 
} 
+0

哦,我明白了。現在我沒有任何錯誤在我的控制檯上。但我怎樣才能得到這些變量,我傳遞的URL我來自laravel新到codeigniter之前,我用我的控制器功能做$ _POST ['價值']的值。但在這裏它不工作 – Lestah

+0

公共職能identify_usertype() \t { \t \t $ email = $ _POST ['email']; \t \t echo「$ email」; \t \t exit; \t} – Lestah

+0

@Lestah:通常在PHP中,會從'$ _POST'數組中獲得POST值。如果你使用框架,他們可能有自己的獲取POST值的方式。檢查框架的文檔和示例。無論哪種方式,在這一點上你都在談論服務器端代碼,而這個問題根本不存在。 – David

0

可以CI中使用此語法

$vairable_name = $this->input->post('VARIABLE_NAME'); 
echo $variable_name; 
exit;