2011-12-16 4 views
-3

HTML 물마루 POST를 보내고 '&'이 그것을 망쳐 놓고 있습니다. 어떻게 피할 수 있습니까? &을 \ &으로 바꾸려고 시도했지만 작동하지 않았습니다. 더 많은 정보를 들어어떻게하면 JavaScript의 POST에서 '&'기호를 피할 수 있습니까?

: 나는 & NBSP 같은 사내 프로젝트와 물건에 이메일 템플릿을 사용하기 위해 노력하고있어 내가 자바 스크립트에서 PHP로 보낼 때 사용하고있어 POST를 속이고있다. 아래

번호 :

emailcontinut = CKEDITOR.instances['emailContinut'].getData(); 
var parametri = "Trimite="+trimite + "&codc="+codc + "&emailSubiect="+emailsubiect + "&emailContinut="+emailcontinut + "&adact="+adact + "&sid="+Math.random(); 


xmlhttp_email_actiune.open("POST",url,true); 
xmlhttp_email_actiune.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
xmlhttp_email_actiune.setRequestHeader("Content-length", parametri.length); 
xmlhttp_email_actiune.setRequestHeader("Connection", "close"); 
xmlhttp_email_actiune.send(parametri); 

I는 $ _POST 에코 대상 PHP에서 [ 'emailContinut'은, 그 용액은 단지

이었던 & NBSP

상기 제 '&'에서 정지

emailcontinut = escape(emailcontinut); 

(자바 스크립트) 그리고 PHP에서 stripslashes()를 사용하여 디코딩합니다. 감사.

+0

'및 오며'Post '내지? 우리에게'url' 예제를주세요 !! –

+0

어떤 식으로'&' '엉망으로 만들었습니까?' 당신은 그것이'post'이고'get'이 아니라고 확신합니까? –

답변

1

당신은 URL을 인코딩하는 JS 기능 이스케이프를 사용하여 인코딩 된 URL을 사용하여 Ajax 호출을 보낼 필요 예 :

var url = "http://127.0.0.1/ajaxResource.php?p1=100&p2=2000&p3=name"; 
url = escape(url); //Now the user is encoded use this url in ajax 

JP

+0

감사합니다. – Bogdan

3

실제로하고있는 것에 따라 콘텐츠를 URL 인코딩 및/또는 HTML 인코딩해야합니다.

+0

난 그냥 (아약스와 함께) 몇 가지 HTML 물마루 POST를 보내고 다른 페이지에 echo'ing 그리고 그것은 항상 처음에 휴식 & – Bogdan

+0

@ Bogdan : 정의 "그것"과 "휴식." 다른 방식으로 작동하는 여러 가지 작업을 수행하고 있습니다. 어떻게 깨지나요? – David

0

봅니다로 교체하는 & 그것은 HTML에 href- 및 SRC-속성에 대해 작동

관련 문제