Rich Content와 SyntaxHighlighter 채택완료
fm25
11년 전
조회 5,463
<section id="bo_v_atc"></div>
<div> <h2 id="bo_v_atc_title">본문</h2></div>
<div>
</div>
<div> <?php</div>
<div> // 파일 출력</div>
<div> for ($i=0; $i<=count($view[file]); $i++) {</div>
<div> if ($view[file][$i][view]) {</div>
<div> $image_file="{$view[file][$i][view]}"; //<P>태그 삭제</div>
<div> $image_pos="<그림".($i+1).">";</div>
<div> $image_pos2="<그림".($i+1).">"; //추가</div>
<div> //수정</div>
<div> if( strstr($view[content],$image_pos) || strstr($view[content],$image_pos2) ){</div>
<div> $pattern="/($image_pos|$image_pos2)/";</div>
<div>
</div>
<div> $view[content]=preg_replace($pattern,$image_file,$view[content]);</div>
<div> }</div>
<div> else echo $view[file][$i][view] . "<p>";</div>
<div> }</div>
<div> }</div>
<div> ?></div>
<div>
</div>
<div> <!-- 본문 내용 시작 { --></div>
<div><span class="Apple-tab-span" style="white-space: pre"> </span> <!-- SyntaxHighlighter 시작 --></div>
<div> <div id="bo_v_con"></div>
<div> <?</div>
<div> function _preg_callback($m)</div>
<div> {</div>
<div> $str = str_replace(array("
", " "), array("\n", " "), $m[1]);</div>
<div> return "<pre class='brush:php;'>$str</pre>";</div>
<div> }</div>
<div>
</div>
<div> $str = $view[content];</div>
<div> $str = preg_replace_callback("/\[code\](.*)\[\/code\]/iU", "_preg_callback", $str);</div>
<div> echo $str;</div>
<div> ?></div>
<div> </div></div>
<div><span class="Apple-tab-span" style="white-space: pre"> </span> <!-- SyntaxHighlighter 끝 --></div>
<div> <?php//echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우 ?></div>
<div> <!-- } 본문 내용 끝 --></div>
<div>
</div>
<div> <?php if ($is_signature) { ?><p><?php echo $signature ?></p><?php } ?>
이미지 출력부분을 아래와 같이 바꾸니 소스가 그대로 출력되네요.
뭐가 문제일까요?
<section id="bo_v_atc"></div>
<div> <h2 id="bo_v_atc_title">본문</h2></div>
<div>
</div>
<div> <?php</div>
<div> // 파일출력</div>
<div> $rich=true; //rich_content 사용하지않을 경우 false;</div>
<div> for ($i=0; $i<=count($view[file]); $i++) { $richimg='';</div>
<div> if ($view[file][$i][view]){</div>
<div> $richimg="{이미지:$i}";</div>
<div> if(!$rich || $rich && strpos( $view[content], $richimg)===false)</div>
<div> echo $view[file][$i][view] . " <p>";</div>
<div> }</div>
<div> }</div>
<div> ?></div>
<div>
</div>
<div> <!-- 본문 내용 시작 { --></div>
<div> <div id="bo_v_con"><? if($rich) echo $view[rich_content]; else echo $view[content]; ?></div></div>
<div> <!-- 테러 태그 방지용 --></xml></xmp><a href=""></a><a href=''></a></div>
<div><span class="Apple-tab-span" style="white-space: pre"> </span> <?php//echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우 ?></div>
<div> <!-- } 본문 내용 끝 --></div>
<div>
</div>
<div> <?php if ($is_signature) { ?><p><?php echo $signature ?></p><?php } ?>
두가지 모두 충족되지않아 현재는 SyntaxHighlighter는 삭제한 상태입니다.
삭제한 상태에서는 이미지는 정상 출력됩니다.
SIR 게시판에서는 Rich Content를 적용하지 않았군요.
일전에 작성했던 글들을 보니... 그림들이 모두 숨어버렸...;;;
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
10년 전
[code:php]
<?php
// 파일 출력
for ($i=0; $i<=count($view[file]); $i++) {
if ($view[file][$i][view]) {
$image_file="{$view[file][$i][view]}"; //<P>태그 삭제
$image_pos="<그림".($i+1).">";
$image_pos2="{이미지:$i}"; //추가
//수정
if( strstr($view[content],$image_pos) || strstr($view[content],$image_pos2) ){
$pattern="/($image_pos|$image_pos2)/";
$view[content]=preg_replace($pattern,$image_file,$view[content]);
}
else echo $view[file][$i][view] . "<p>";
}
}
?>
[/code]
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
11년 전
<?php
<div> // 파일 출력</div>
<div> for ($i=0; $i<=count($view[file]); $i++) {</div>
<div> if ($view[file][$i][view]) {</div>
<div> $image_file="{$view[file][$i][view]}"; //<P>태그 삭제</div>
<div> $image_pos="<그림".($i+1).">";</div>
<div> $image_pos2="{이미지:$i}"; //추가</div>
<div> //수정</div>
<div> if( strstr($view[content],$image_pos) || strstr($view[content],$image_pos2) ){</div>
<div> $pattern="/($image_pos|$image_pos2)/";</div>
<div>
</div>
<div> $view[content]=preg_replace($pattern,$image_file,$view[content]);</div>
<div> }</div>
<div> else echo $view[file][$i][view] . "<p>";</div>
<div> }</div>
<div> }</div>
<div> ?>
이렇게 수정하니 두가지 방식 모두 가능하고, SyntaxHighlighter도 사용할 수 있군요.
굳이 두가지를 병행해서 사용할 필요는 없으나...
이전에 작성했던 글들을 수정하지 않아도 되는군요.
이렇게 바꿨을 때 문제는 없을까요?
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인