채택완료

' , " 쿼테이션, 더블쿼테이션 사용법

2023-04-26 (수) 20:31:23 2,982
Copy
// A:

$A_history  = "<font color=blue>". $roomName . "</font> <span style='color:gray'> 개설</span>><font color=red>(익명방)</font><font color=red>(알람)</font><br>";

$sql = " UPDATE sutda SET
           `A_history` ='$A_history'
            WHERE PID = '$pid'
            ";
$result = sql_query($sql);
Copy
// B:

$A_history  = '<font color=blue>'. $roomName . '</font> <span style="color:gray"> 개설</span>><font color=red>(익명방)</font><font color=red>(알람)</font><br>';

$sql = " UPDATE sutda SET
           `A_history` ='$A_history'
            WHERE PID = '$pid'
            ";
$result = sql_query($sql);

위 코드중에 A는 디비에 기록이 안돼고 ..  B는 됩니다.

한참 헤맸는데.. 이유를 모르겠습니다.

보건데 기초적인 규칙 같은데 ..  알려주시면 감사하겠습니다.

|

답변 2개

채택된 답변
+20 포인트

A 케이스의 최종 쿼리는 다음과 같이 만들어집니다.

$roomName = 'roomNameValue';

$pid = '12345';

         UPDATE sutda SET
           `A_history` ='<font color=blue>roomNameValue</font> <span style='color:gray'> 개설</span>><font color=red>(익명방)</font><font color=red>(알람)</font><br>'
            WHERE PID = '12345'

정상적이지 않은 쿼리 형태가 되기 때문에 문제가 생기는데

그런 경우 다음처럼 에러정보를 출력해볼수 있습니다.

Copy
if ($result == false) {
    echo sql_error_info();
}

$A_history = addslashes($A_history);

를 추가해주면 됩니다.

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