2012-12-28 6 views
0

일반 형식 - jQuery가 아닌 JavaScript를 통해 제출하려면 ... ajax JSON 요청을 서버에 입력 = POST (보안 로그 요청) 필수 웹 양식?ajax JSON 요청을 서버 유형 = POST (보안 로그인 요청)

웹 양식이 없으면 어떻게해야합니까? JSON이 보낸 문자열 var을 넣는 방법과 PHP로 가져 오는 방법/방법은 무엇입니까?

ajax3.send (jsonStringhere); // ??? 어떻게 PHP에서 얻을 ???

function loginProcess() { 
var userID = document.getElementById("name").value; 
var email = document.getElementById("email").value; 
var password = document.getElementById("password").value; 

ajax3 = new XMLHttpRequest(); 

//1st way 
ajax3.open("GET","loginProcess.php?userID="+userID+"&email="+email+"&password="+password,false); 
ajax3.addEventListener("readystatechange", processResponse, true); 
ajax3.send(); 

changeDisplay("loginRegisterDiv"); 


//2nd way JSON post type here 

//??? 

} 
+1

나는 투표를 업 것이다 당신은 경우 (URL 인코딩하는 모든 매개 변수를 필요도 원격으로 작전 질문에 가까워 것을 이해하는 사람 .. – dbf

답변

2

URL (GET)을 통해 중요한 정보를 보내지 마십시오.

사람들은 종종 URL을 공유하며 개인 정보가 숨겨지기를 원하지 않습니다.

웹 양식을 시뮬레이트하려면 POST 요청을 보내보십시오. 쿼리 속성에 JSON을 넣어 :

var ec = window.encodeURIComponent, 
    queryStr = "userID=" + ec(userID) + "&email=" + ec(email) + "&password=" + ec(password) + "&json" + ec(JSON.stringify(yourJson)), 
    ajaxReq = new XMLHttpRequest(); 

ajaxReq.open("POST", "loginProcess.php", false); // Should really be 'true' for asynchronous... 
ajaxReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); // Important! 
ajaxReq.send(queryStr); 
+0

에서 어떤 대답을 암호 또는 JSON에'&'가 들어 있습니다). – Barmar

+0

@Barmar 감사합니다. –

+0

이제 내 업보트를받습니다! – Barmar