2011-10-15 8 views
2

TinyMCE의 데이터를 수락합니다. 내가 사이트 복사해서 붙여 넣을 때 나는 이와 같은 어려움에 들어가 :SQL 삽입 및 이스케이프 특수 문자

http://www.rlslog.net/category/games/pc/ 

내가는 SQL 주입을 방지하고 특수 문자를 탈출하기 위해 다음과 같은 기능을 사용하는 경우 I 출력 삽입 된 텍스트 번 파멸 내 페이지 전체가.

$title = mysql_real_escape_string($title); 
$data = mysql_real_escape_string($data); 
$author= mysql_real_escape_string($author); 

$data =htmlentities($data); 
$title =htmlentities($title); 
$author =htmlentities($author); 

mysql_query("SET NAMES 'utf8'"); 

mysql_query("INSERT INTO `easy_db`.`article` (`Title`, `Article`, `Topics`, `author`, `page`, tpage) VALUES('$title', '$data', '$topic', '$author', '$page','$tpage')") or die(mysql_error()); 
mysql_close(); 

데이터가 그렇게보고 (데이터베이스에서 출력 밤은) 내 HTML 텍스트 때 내가 출력 내가 무엇을 얻을 : 내 php.ini 파일에서 magic_quotes_gpc의를 turend

כותרת ×”×™×•× 

skidrow%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=35\" frameborder=\"0\" scrolling=\"no\"></iframe></p>\r\n<p class=\"comments_link\" style=\"padding-top: 20px; padding-right: 0px; padding-bottom: 10px; padding-left: 0px; line-height: 19px; margin: 0px;\"><a style=\"color: 

c02e13; text-decoration: none; padding: 0px; margin: 0px;\" title=\"Comment on Orcs Must Die Fix-SKIDROW\" 
href=\"http://www.rlslog.net/orcs-must-die-fix-skidrow/#respond\">Comments(0)</a></p>\r\n</div>\r\n</div>\r\n<div style=\"padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 40px; margin: 0px;\"><iframe style=\"padding: 0px; margin: 0px;\" src=\"http://www.roadcomponentsdb.com/300.htm\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"NO\" width=\"300\" height=\"250\"></iframe></div>\r\n<p id=\"nextlinks\" style=\"padding-top: 20px; padding-right: 20px; padding-bottom: 0px; padding-left: 20px; margin: 0px;\"><strong style=\"padding: 0px; margin: 0px;\">Previous post:</strong>&nbsp;<a style=\"color: #c02e13; text-decoration: none; padding: 0px; margin: 0px;\" href=\"http://www.rlslog.net/musclemag-international-%e2%80%93-december-2011-p2p/\">MuscleMag International &ndash; December 2011-P2P</a></p> 
012 : 여기
magic_quotes_gpc 
Default Value: Off 
Development Value: Off 
Production Value: Off 

텍스트 내가 phpMyAdmin에에에 다스 려 할 때처럼 외모를 넣어하는 방법이다

질문은 그 이유가 무엇일까요? 어떻게 막을 수 있습니까? SQL 주입을 막기에 충분합니까?

답변

2

SET NAMES 'utf8'이 귀하의 데이터를 변경하고 있습니다.

this MySQL forum link을 살펴보십시오. 그는 무슨 일이 일어나고 있는지 아주 잘 설명합니다. 간단한 설명 : 변환 과정은 문자를 읽어야하는 것에 관해 혼동 스럽습니다.

+0

내 코드를 보면 이미 설정했습니다. 해당 문자열을 인코딩하는 또 다른 방법이 있습니까? php 또는 mysql 함수를 사용하여 해당 효과를 제거하십시오. –

+0

@DmitryMakovetskiyd 해당 문을 제거해야합니다. –

+0

아직 개선되지 않은 것 같습니다. × × × × × × × × × × × × × × × × 텍스트가 아닌 모든 텍스트 요소에서 출력됩니다. –