테스트 사이트 - 개발 중인 베타 버전입니다

mysql 쿼리문에 따옴표 중복 처리 채택완료

타버린나무 2년 전 조회 1,850

</p>

<p>

echo $A='a"b"c';

echo $B= "a'b'c";

 </p>

<p>// t1 성공

$sql = " UPDATE sutda SET

`A` ='$A'

WHERE PID = '1'

";

$result = sql_query($sql);</p>

<p> </p>

<p>//t2 실패

$sql = " UPDATE sutda SET

`B` ='$B'

WHERE PID = '1'

";

$result = sql_query($sql);</p>

<p> </p>

<p>//t3 실패

$sql = " UPDATE sutda SET

`B` ="$B"

WHERE PID = '1'

";

$result = sql_query($sql);</p>

<p> </p>

<p>//t4 실패

$sql = " UPDATE sutda SET

`B` ='{$B}'

WHERE PID = '1'

";

$result = sql_query($sql);</p>

<p>

 

위 쿼리문중 $B를 디비에 쓸경우 모두 기록 실패입니다.

$B를 디비에 기록하려면 쿼리문을 어떤 방법으로 해야 하나요..?

 

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

답변 2개

채택된 답변
+20 포인트
핑크빈
2년 전

echo $A='a"b"c'; echo $B= "a'b'c";

밑에

$A= sql_real_escape_string($A);

$B = sql_real_escape_string($B);

이코드를 입력해보세요.

로그인 후 평가할 수 있습니다

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

2년 전

https://github.com/gnuboard/gnuboard5/blob/master/lib/common.lib.php#L2308

</p>

<p>$B = sql_real_escape_string($B);</p>

<p> </p>

<p>$sql = " UPDATE sutda SET

`B` ='{$B}'

WHERE PID = '1'

";

$result = sql_query($sql);</p>

<p>

로그인 후 평가할 수 있습니다

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

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

로그인