채택완료

url 인코딩...

2014-08-17 (일) 16:28:30 14,613

안녕하세요~

한가지 질문이 생겨 다시왔습니다;; ㅠ

p2p사이트나 여러사이트들을보니 일부 사이트에서

http://smartfile.co.kr/contents/search.php?category1=&s_column=all&s_word=추천 

이런식으로 "추천"이라고 바로 쿼리를 보내면

a69f7affd208cdd32c6bc25d17b7c652_1408260471_3066.png
 

이렇게 깨져버리네요;;

php iconv함수로 인코딩을 했는데도 그런데..

혹시 다른 인코딩 방법을 써야할까요??

|

답변 3개 / 댓글 8개

채택된 답변
+20 포인트

s_word=urlencode(추천) ​

 

$s_word = urldecode($_GET['s_word']); 

답변에 대한 댓글 5개

음.. 지금 제가 파싱을 연습하고있는데

$q를 urlencode인코딩해도
$q = urldecode($q);
http://filehon.com/contents/search.php?s_column=title&s_word={$q}

http://smartfile.co.kr/contents/search.php?s_word=추천 를 불러와서 검색어가 계속 깨지네요;;
$q = iconv("UTF-8","EUC-KR", $q);
음.. 안되네요;;
$q = urlencode(iconv("UTF-8","EUC-KR", $q));
우와.. 정말 감사합니다 ㅠㅠ 이제 되네요 ㅎㅎ;;
그럼 디코딩 말고 인코딩을 쓰세요 urlencode

답변에 대한 댓글 1개

음.. 디코딩을했더니
http://smartfile.co.kr/contents/search.php?s_word=%EC%B6%94%EC%B2%9C
이주소가 나오는데

이상하게 들어가니까
http://smartfile.co.kr/contents/search.php?s_word=추천
으로 리다이렉트 되어버리네요;; 저쪽사이트에서 막아둔걸까요??
문서 인코딩 타입과 meta 태그 캐릭터셋이 일치하는지 확인해세요

가령 문서는 utf8인데 캐릭터셋은 euckr .. 파싱은 불러오는 사이트 캐릭터셋도 중요해요

불러오는 곳이 euckr인데 프로그램이 utf8이면 한글깨지고 그래요

답변에 대한 댓글 2개

제 서버가 utf8이고 퍼올려는곳이 euc-kr이라

// 검색어를 인코딩
$q = urldecode($q);

// durl의 주소를 불러옴
$durl = "http://filehon.com/contents/search.php?s_column=title&s_word={$q}";
$ps -> fetch($durl);

// 결과를 인코딩
$resulte = iconv("EUC-KR", "UTF-8", $ps->results);
이렇게 인코딩을 한번했는데도 그렇네요;
문서 자체가 깨지는건 아니고 검색어만 깨지네요;;

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