php 정규식 하나만 부탁할께요 ㅠ..ㅠ
그래픽 편집기에서 글을 쓰다가 보면 외부의 웹페이지를 긁어서 붙이는 경우가 있어요.
대부분은 문제가 없는데 <textarea> ... </textarea> 가 있는 부분이 들어오게 되면
답글을 달 때 문제가 생기게 됩니다.
phpschool을 찾아보니까... 답글을 달아줄 때... 안에 들어가는 내용에서
<textarea name="content" cols="32" rows="4">---></textarea>를
아래처럼 바꾸면 된다고 하더라구요.
<textarea name="content" cols="32" rows="4">
--->
</textarea>
이것을 한번에 싹 바꿔버리는 방법 없나요??? php 정규식이 넘 어려워서 엄두가 안나네요.
대부분은 문제가 없는데 <textarea> ... </textarea> 가 있는 부분이 들어오게 되면
답글을 달 때 문제가 생기게 됩니다.
phpschool을 찾아보니까... 답글을 달아줄 때... 안에 들어가는 내용에서
<textarea name="content" cols="32" rows="4">---></textarea>를
아래처럼 바꾸면 된다고 하더라구요.
<textarea name="content" cols="32" rows="4">
--->
</textarea>
이것을 한번에 싹 바꿔버리는 방법 없나요??? php 정규식이 넘 어려워서 엄두가 안나네요.
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기
댓글 8개
htmlentities // htmlspecialchars
이걸로 하면 되지 않나요? 따옴표는 인자 값줘서 처리유무 설정 할 수 있으니...
<textarea name="content" cols="32" rows="4">---></textarea>
이내용이 그대로 들어가므로 에러가 발생할수도 있을것 같구요..
htmlentities() 로 하시면 문자 엔티티에 존재하는 모든 문자를 엔티티로 변환하므로
htmlentities() 를 쓰시면 되겟네요
들어 있고 그 홈피내용중에 textarea가 있는 경우 입니다.
그런데 htmlentities를 써버리면 전체가 다 plain html 코드가 되어서 퍼온 화면이
보이는게 아니라 그 화면의 html code가 보이게 되는 겁니다.
쉬운거면 제가 고민을 안하죠 ㅠ..ㅠ
$str = "<h3>hi</h3>abcdefg<br><p>aaa</p>
<textarea name=\"content\" cols=\"32\" rows=\"4\">---></textarea>";
$str = preg_replace("/<textarea(.*)>/iUs", "<textarea\\1>", $str);
$str = preg_replace("/<\/textarea>/iUs", "</textarea>", $str);
$x = '<a>sdfsfsdf<textarea name="content" cols="32" rows="4">---></textarea>sdfsdfdsf</a>';
echo preg_replace("/<(textarea[^>]*)>([^<]*)<(\/textarea)>/i", "<$1>\n$2\n<$3>", $x);
?>
$2 가 조금 헷갈리네요.
머리가 아파서 여기까지만 올리겠습니다.
이거 때문에 웹문서 편집기에 textarea가 있는거 수정할 때 문제가 생기더라구요.
저는 <textarea>를 <table><tr><td> ... </td></tr></table> 로 바꿔보려구요.