그누보드에서 일부정규식이 먹히지 않습니다.
본문
preg_match_all("/<IMG[^>]*src=[\"']?([^>\"']+)[\"']?[^>]*>/i", $wr_content, $matchs);
위 정규식은 그누보드에 글을 등록하는 과정 즉 write_update.head.skin.php 파일에서
해당 컨텐츠 내에서 이미지주소만을 추출하는 정규식입니다.
보통은 저렇게 하면
$matchs[1] 배열에 이미지 주소가 저장이 되는데...
배열에 담기지조차 않네요.
write_update.head.skin.php 에서도 안되고 write_update.php에서도 안됩니다.
write_update.tail.skin.php 도 마찬가지..
그런데 view.skin.php 및 test.php 파일을 일부러 만들어서 테스트해보면 잘되는군요.
왜 글쓰기 관련 파일에서는 안먹힐까요?
답변 3
/lib/common.lib.php
2040번째
// 에디터 이미지 얻기
function get_editor_image($contents, $view=true)
{
if(!$contents)
return false;
// $contents 중 img 태그 추출
if ($view)
$pattern = "/<img([^>]*)>/iS";
else
$pattern = "/<img[^>]*src=[\'\"]?([^>\'\"]+[^>\'\"]+)[\'\"]?[^>]*>/i";
preg_match_all($pattern, $contents, $matchs);
return $matchs;
}
저 코다리님 write_update.head.skin.php는요
write_update.php의
101 번째 에 있자나요
아래 소스가 19번째 잇고요
$wr_content = '';
if (isset($_POST['wr_content'])) {
$wr_content = substr(trim($_POST['wr_content']),0,65536);
$wr_content = preg_replace("#[\\\]+$#", "", $wr_content);
}