채택완료

urlecoding 질문

2023-02-21 (화) 14:57:32 1,196

현재 데이터를 인코딩하여 echo로 출력하면 정상적으로 한글이 인코딩되어 나오는데

앵커태그<a>에 붙이면 인코딩이 먹지 않습니다.

예로 <a href="aaa.php?a=한글"> 이렇게 넘기려고 하는데 한글이 보이면 안되어 인코딩된 걸로 넘기려고 합니다.

<a href="aaa.php?a=<?php echo urlencode("한글")?>">

또는

<?php $aa = urlencode("한글")?>

<a href="aaa.php?a=<?php echo $aa?>">

로 하여도

echo $aa 하면 한글이 인코딩되어 특수문자로 나오지만

위 처럼 <a> 태그에 만 넣으면 인코딩되어 나오는게 아니라 한글이 그대로 나오고

클릭해도 GET으로 "한글" 그대로 넘어가네요

php 세팅을 잘못한건지 아니면 브라우저 특성인지 도통 모르겠네요

참고로 브라우저는 크롬으로 테스트 하고 있습니다.

|

답변 2개

채택된 답변
+20 포인트
2023-02-21 (화) 15:38:11

크롬 브라우저 특성입니다. (방법은 없을 것 같습니다.)

2023-02-22 (수) 00:18:33

$link = urlencode("aaa.php?a=한글");

실제로 링크되는 부분은

<a href="<?=$link?>"> 링크클릭 </a>

으로 해보세요

답변을 작성하려면 로그인이 필요합니다.