2010-01-11 4 views
0

나는 그것을 해결할 수 없다. PHP 백엔드에 POST 요청을 보내야합니다. 그것은 다음과 같아야합니다jQuery 게시물 옵션

Array ([username] => 'username' [password] => 'password' [action] => 'login') 

나는 프론트 엔드와 같은 형태를하고 난 사용자 및 암호를 얻을 수 .serialize()를 사용합니다. 하지만 액션 키/값을 어떻게 추가 할 수 있습니까?

지금은 그냥 "&action=login"과 같이 수동으로 문자열을 추가하지만이 솔루션은 마음에 들지 않습니다. 다른 문제는 jQuery 플러그인 만 사용할 수 없다는 것입니다.

+0

사용자 이름과 암호를 검색하는 코드를 게시 할 수 있습니까? (모두 HTML 및 자바 스크립트) –

답변

0
$login = //your code; 
$yourarray =//your code here 
if (array_key_exists($login, $yourarray)) 
// your code here 
0

jQuery에서 POST 데이터를 보내시겠습니까? JSON에 있어야 회신

당신의 PHP 백엔드에서
$.post("your/controller/url.php", {username:'myname', password:'mypassword',action:'login'}, function(data){ 
    //do something when answer from your php backend arrives 
},'json'); 

당신이뿐만 usuall $ _POST에 액세스 할 수 있습니다 (필수하지,하지만 난 그것을 권 해드립니다거야)

1
var usr = $("[name='username']").val(); 
var pwd = $("[name='password']").val(); 
var act = $("[name='action']").val(); 

$.post("script.php", {username:usr, password:pwd, action:act}, function(rst){ 
    alert(rst); // alerts 'Thank you [username], your data has been received.' 
}, "html"); 

그리고 script.php에 대한 코드를 : 시도

if ($_POST) { 
    echo "Thank you " . $_POST["username"] .", your data has been received."; 
} else { 
    echo "Nothing found."; 
} 
0

이와 비슷한 문제가 AJAX 기반 애플리케이션에서 발생합니다. 이렇게하는 우아한 방법은 없습니다. 이 방법을 사용하고 있습니다 :

<form id="foo"> 
    <input type="hidden" id="action" name="action" value="login" /> 
    <input type="text" id="username" .... 
... 
</form> 

이렇게하면 수동으로 문자열을 추가 할 필요가 없습니다.

0

보내는 데이터 개체에 데이터를 추가하려고합니까? 다음과 같이 시도해 볼 수 있습니다.

var data = form.serializeArray(); 
data.push({'action':'login'}); 

$.post("/url", data, function(){ callback goes here}, 'json');