텍스트 필드에 따옴표 문제 정보
텍스트 필드에 따옴표 문제
본문
텍스트 필드에 작은 따옴표, 큰 따옴표 문제.....

입력후 :

어찌 하면 좋을까요.
입력전 :
추천
0
0
댓글 7개

에 mysql 에서 하십시오! ㅋㅋ ;

유저가 쓰는 게시판이라고 할때가............
개발자 분이나 엔지니어분 이시라면...!!
PDO 드라이버나 mysqli로 변경하셔서 쓰는 것도 나쁘지 않아요.
쿼리 예외처리가 조금 부족한 듯 하여 그냥 stored형태로 보낼 수 있게 PDO드라이버로 연결해서 씁니다.
common.lib.php파일만 조금 수정하면 되요.
수정하게 되면 ' 문제는 해결됩니다만...
preg_replace로 '문제를 해결할 수 있는 간단한 해법이 stackoverflow에 있었는데.....찾으면 링크 걸어드릴께요.
PDO 드라이버나 mysqli로 변경하셔서 쓰는 것도 나쁘지 않아요.
쿼리 예외처리가 조금 부족한 듯 하여 그냥 stored형태로 보낼 수 있게 PDO드라이버로 연결해서 씁니다.
common.lib.php파일만 조금 수정하면 되요.
수정하게 되면 ' 문제는 해결됩니다만...
preg_replace로 '문제를 해결할 수 있는 간단한 해법이 stackoverflow에 있었는데.....찾으면 링크 걸어드릴께요.

저건 그냥 해당 페이지에서 value에 값을 넣을때
<?=htmlspecialchars($변수)?>
하면 되는 문제 같은데요.
<?=htmlspecialchars($변수)?>
하면 되는 문제 같은데요.

네 그누보드 전반적으로 이 문제를 해결하면 좋을 거 같아서요.
이게 저 페이지 뿐만 아니라 관리자페이지 곳곳에 저런 현상이 발생하는데...
작은따옴표를 내 맘대로 넣을 수 없다는 게...
이게 저 페이지 뿐만 아니라 관리자페이지 곳곳에 저런 현상이 발생하는데...
작은따옴표를 내 맘대로 넣을 수 없다는 게...
데이터베이스 안에 자료는 잘 올라와 있고 input에서 처리될 때 현상입니다.
문제: input에서 value값을 작은 따옴표로 감싸면 작은 따옴표가 보이지 않고, 큰 따옴표로 감싸면 큰 따옴표가 보이지 않음.
처리 예:
<input type="text" name="test1" value="girls' generation" /> <--큰 따옴표로 감싼 경우는 작은 따옴표가 문제없이 보임.
<input type="text" name="test3" value="say "hello"" /> <-- 큰 따옴표로 감싸고 안에 큰 따옴표가 오는 경우 "로 전환할 것.
<input type='text' name='test4' value='girls' generation' /> <--작은 따옴표로 감싸고 안에 작은 따옴표가 온 경우는 '로 전환할 것.
<input type="text" name="test5" value="say "hello"" /> <-- 작은 따옴표로 감싸고 안에 큰 따옴표가 오는 경우는 문제 없음.
그러므로 그누보드의 경우 작은 따옴표로 value값을 감쌌으므로 boardgroup_form.php에서 다음을 찾으세요.
<tr class='ht'>
<td><input type=text class=ed name='gr_<?=$i?>_subj' value='<?=get_text($group["gr_{$i}_subj"])?>' title='여분필드 <?=$i?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$i?> value='<?=$gr["gr_$i"]?>' title='여분필드 <?=$i?> 설정값'></td>
<td><input type=text class=ed name='gr_<?=$k?>_subj' value='<?=get_text($group["gr_{$k}_subj"])?>' title='여분필드 <?=$k?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$k?> value='<?=$gr["gr_$k"]?>' title='여분필드 <?=$k?> 설정값'></td>
</tr>
그리고 그것을 다음으로 수정하면 됩니다:
<tr class='ht'>
<td><input type=text class=ed name='gr_<?=$i?>_subj' value='<?=get_text($group["gr_{$i}_subj"])?>' title='여분필드 <?=$i?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$i?> value='<?=str_replace("'", ''', $gr["gr_$i"])?>' title='여분필드 <?=$i?> 설정값'></td>
<td><input type=text class=ed name='gr_<?=$k?>_subj' value='<?=get_text($group["gr_{$k}_subj"])?>' title='여분필드 <?=$k?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$k?> value='<?=str_replace("'", ''', $gr["gr_$k"])?>' title='여분필드 <?=$k?> 설정값'></td>
</tr>
문제: input에서 value값을 작은 따옴표로 감싸면 작은 따옴표가 보이지 않고, 큰 따옴표로 감싸면 큰 따옴표가 보이지 않음.
처리 예:
<input type="text" name="test1" value="girls' generation" /> <--큰 따옴표로 감싼 경우는 작은 따옴표가 문제없이 보임.
<input type="text" name="test3" value="say "hello"" /> <-- 큰 따옴표로 감싸고 안에 큰 따옴표가 오는 경우 "로 전환할 것.
<input type='text' name='test4' value='girls' generation' /> <--작은 따옴표로 감싸고 안에 작은 따옴표가 온 경우는 '로 전환할 것.
<input type="text" name="test5" value="say "hello"" /> <-- 작은 따옴표로 감싸고 안에 큰 따옴표가 오는 경우는 문제 없음.
그러므로 그누보드의 경우 작은 따옴표로 value값을 감쌌으므로 boardgroup_form.php에서 다음을 찾으세요.
<tr class='ht'>
<td><input type=text class=ed name='gr_<?=$i?>_subj' value='<?=get_text($group["gr_{$i}_subj"])?>' title='여분필드 <?=$i?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$i?> value='<?=$gr["gr_$i"]?>' title='여분필드 <?=$i?> 설정값'></td>
<td><input type=text class=ed name='gr_<?=$k?>_subj' value='<?=get_text($group["gr_{$k}_subj"])?>' title='여분필드 <?=$k?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$k?> value='<?=$gr["gr_$k"]?>' title='여분필드 <?=$k?> 설정값'></td>
</tr>
그리고 그것을 다음으로 수정하면 됩니다:
<tr class='ht'>
<td><input type=text class=ed name='gr_<?=$i?>_subj' value='<?=get_text($group["gr_{$i}_subj"])?>' title='여분필드 <?=$i?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$i?> value='<?=str_replace("'", ''', $gr["gr_$i"])?>' title='여분필드 <?=$i?> 설정값'></td>
<td><input type=text class=ed name='gr_<?=$k?>_subj' value='<?=get_text($group["gr_{$k}_subj"])?>' title='여분필드 <?=$k?> 제목' style='text-align:right;font-weight:bold;' size=15></td>
<td><input type='text' class=ed style='width:99%;' name=gr_<?=$k?> value='<?=str_replace("'", ''', $gr["gr_$k"])?>' title='여분필드 <?=$k?> 설정값'></td>
</tr>

네 이 문제가 공론화되어서,
그누보드 차기버전에 반영되었으면 하는 바람으로 적어봤었습니다...........
그누보드 차기버전에 반영되었으면 하는 바람으로 적어봤었습니다...........