2016-08-10 2 views
0

웹 응용 프로그램에서 연결 한 데이터베이스에 문자열을 삽입하려고합니다.PHP를 사용하여 < and > 연산자를 사용하여 데이터베이스에 문자열 삽입

String은 JavaScript에서 AJAX를 사용하여 PHP로 완벽하게 전달되지만, 삽입이 실행될 때 문자열은 "<"또는 ">"연산자 뒤에있는 문자를 모두 제거합니다.

예를 들어 문자열 "< = 칠일 수술 후 의사로 돌아 가기"이제 삽입되는 것을

:

원하는 삽입 "의사로 돌아 가기": "< = 칠일 수술 후 의사로 돌아 가기"

$string = $_POST['string']; 
$sqlInsert = "UPDATE table set string = ? where date = ?"; 
$run = odbc_prepare($conn, $sqlInsert); 
odbc_execute($run, array($string,$date)); 

이 삽입 w 다른 스트링 위대한 작품 :

내가 지금 가지고있는 코드입니다 연산자보다 크거나 작음

+0

모든 운 :

이것은 당신의 HTML을 일 처리하지 않고 특수 문자를 참조하기 위해 필요한 무엇인가? – MonkeyZeus

답변

0

쿼리에 N 접두사를 사용할 수 있습니다. N 접두사가있는 문자열을 varchar 필드에 쓰면 암시 적으로 변환됩니다. 당신이 대답 this answer

2

에서 자세한 내용을 읽을 수 있습니다

values (N'Return to doctor >= 7') 

예를

것이 삽입은 문제없이 작업을 수행하고 그 <> 기호를 안전하게 데이터베이스에 저장됩니다 가능성이 높다.

발생하는 문제는 해당 데이터를 브라우저로 출력하는 것입니다. 웹 브라우저는 <을 html 태그의 시작 태그로 처리합니다. 기본적으로 브라우저에 <= 7 days after surgery> html 태그로 구성된 브라우저를 제공하므로 잘못된 html로 무시됩니다. 이와

echo htmlentities($row['string']);