초보자 질문 올립니다

1777969912_eNmdDQFsa6.webp
음악 게시판인데 이것을 수정을 하려는데 방법쫌 알려주시면 감사하겠습니다
감사합니다
|

답변 6개 / 댓글 11개

<!-- 본문 내용 시작 { -->
<div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
<?php //echo $view['rich_content']; // {이미지:0} 과 같은 코드를 사용할 경우 ?>
<!-- } 본문 내용 끝 -->

이걸로 붙어넣어보세요
  • 수정 전: <?php//echo
  • 수정 후: <?php //echo
문을 열어야 짐을 옴기고 
짐을 옴기고나면 문을 닫아야죠

늘 행복하세요
이미지에 나타난 오류는 view.skin.php 파일의 136번 줄에서 문법 실수가 발생했다는 뜻입니다. php라는 글자를 따옴표 없이 그냥 써서 시스템이 이를 설정되지 않은 '상수'로 오해하고 있는 상황입니다.

🛠 해결 방법 (136번 줄 확인)
skin/board/mymusic/view.skin.php 파일을 열어 136번 줄 근처를 확인해 보세요. 아마 아래와 같은 형태의 실수가 있을 확률이 높습니다.
  1. 태그 오타: <? php 처럼 <?와 php 사이에 공백이 있는 경우
    • 수정: <?php (공백 없이 붙여쓰기)
  2. 문자열 따옴표 누락: 단어 php를 따옴표 없이 쓴 경우
    • 수정: 'php' 또는 "php" (따옴표로 감싸기)
  3. 자바스크립트 내 오타: <script> 안에서 PHP 코드를 쓰다가 오타가 난 경우

가장 흔한 실수 예시
  • 잘못된 코드: if ($view['...'] == php)
  • 올바른 코드: if ($view['...'] == 'php')
올려주신 이미지를 구글에 던져 주면 이런 답을 줍니다.
이전에 설명을 한번 해 드렸던걸로 기억이 되는데 .....

시도조차 안 해보신듯.
  • 경고는 "php라는 상수가 없으니 문자열로 처리했지만, 앞으로는 에러가 날 수 있다"는 뜻입니다.

  • 코드에서 문자열을 사용할 때는 반드시 따옴표를 붙여야 합니다.

  • 해당 파일의 136번째 줄을 확인해서 php라는 단어가 따옴표 없이 쓰인 부분을 'php'로 고쳐주면 해결됩니다.

답변에 대한 댓글 3개

// 파일 출력
$v_img_count = count($view['file']);
if($v_img_count) {
echo "<div id=\"bo_v_img\">\n";

이곳인데 모르겠습니다 초보라
게시판 "mymusic"이 현재 서버에 맞지 않은 것 같습니다.
/skin/board/mymusic/* 이 파일들을 수정해야 할 것 같네요..
<?php
// 파일 출력
$v_img_count = count($view['file']);
if($v_img_count) {
echo "<div id=\"bo_v_img\">\n";

for ($i=0; $i<=count($view['file']); $i++) {
if ($view['file'][$i]['view']) {
//echo $view['file'][$i]['view'];
echo get_view_thumbnail($view['file'][$i]['view']);
}
}

echo "</div>\n";
}
?>

<!-- 본문 내용 시작 { -->
<div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
<?php//echo $view['rich_content']; // {이미지:0} 과 같은 코드를 사용할 경우 ?>
<!--

=>
<?php
// 파일 출력
$v_img_count = count($view['file']);
if($v_img_count) {
echo "<div id=\"bo_v_img\">\n";

foreach($view['file'] as $view_file) {
echo get_file_thumbnail($view_file);
}

echo "</div>\n";
}
?>

<!-- 본문 내용 시작 { -->
<div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
<?php //echo $view['rich_content']; // {이미지:0} 과 같은 코드를 사용할 경우 ?>
<!--
2026-05-05 (화) 18:49:25
구버전 스킨일경우  HTML 속성 안에서 {{ }} 구문을 쓸 때 따옴표 위치가 잘못되거나 또는 echo php; 이런식으로 에코 호출할때 상수가 없으니  undefined 경고가 뜹니다.
즉 ' ' 와 " " 를 혼용하거나, 닫는 따옴표가 빠져 있으면 파서가 변수를 제대로 인식하지 못합니다.
하여
<?  이렇게 문법처리되어잇는 부분을모 <?php 로 바꿔주세요 그리고 배열 키 대괄호 부분도  [wr_1] 이렇게 처리된부분도 모두 다  ['wr_1'] 따옴표 감싸주셔요 기타 조건문이나 앞서말했듯이 html,속성부분들 등등 다 체크하셔야합니다.
그래도 안된다 하시면 해당 뷰스킨 136 라인 코드 올려보세요  이해당라인을 올바르게 수정해주시 기 바랍니다.  아마 이라인수정을해도 또다른 라인도 뜰수도 있습니다. 하여 전체적으로 한줄씩 체크 해보시 바랍니다.

답변에 대한 댓글 8개

<?php
// 파일 출력
$v_img_count = count($view['file']);
if($v_img_count) {
echo "<div id=\"bo_v_img\">\n";

for ($i=0; $i<=count($view['file']); $i++) {
if ($view['file'][$i]['view']) {
//echo $view['file'][$i]['view'];
echo get_view_thumbnail($view['file'][$i]['view']);
}
}

echo "</div>\n";
}
?>

<!-- 본문 내용 시작 { -->
<div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
<?php//echo $view['rich_content']; // {이미지:0} 과 같은 코드를 사용할 경우 ?>
<!-- } 본문 내용 끝 -->

<?php if ($is_signature) { ?><p><?php echo $signature ?></p><?php } ?>

<!-- 스크랩 추천 비추천 시작 { -->
<?php if ($scrap_href || $good_href || $nogood_href) { ?>
<div id="bo_v_act">
<?php if ($scrap_href) { ?><a href="<?php echo $scrap_href; ?>" target="_blank" class="btn_b01" onclick="win
<!-- 본문 내용 시작 { -->
<div id="bo_v_con">
<?php echo get_view_thumbnail($view['content']); ?>
</div>
<?php // 이 부분처럼 <?php 뒤에 한 칸을 띄워야 합니다.
if (isset($view['rich_content'])) {
echo $view['rich_content'];
}
?>
<!-- } 본문 내용 끝 -->
https://sir.kr/questions/howto
https://sir.kr/questions/guide

제못 짓는 방법 부터 배우셔야 할듯 합니다.

이것 또한 링크 드린것 같은데 안 보신듯 .....
숙향님 글을 오래전 것 까지 ... 보았습니다.
이런 형태의 질문이 반복 됩니다. 해결책은
정해져 있는데 .... 질문이 반복 됩니다.

따로 메모를 해 두시던가 검색을 좀 더
활용해 보시기 바랍니다. 요약 하자면
질문도 같고 답도 같은데 질문이 계속 반복 됩니다.
할줄알면 이곳에 안오죠 모르니까 묻는것인데 ????????????????????????????
for ($i=0; $i<=count($view['file']); $i++) { 이부분을 잘보시면 잘못된게 보이네요
여기서 <=를 쓰면 i=3까지 접근하려고 해서 undefined offset 경고가 뜰 수 있습니다
하여 for ($i=0; $i < count($view['file']); $i++) { 이게 정상이니 바꿔보세요
그리고
<?php//echo $view['rich_content']; ?> 이부분도 잘못되었습니다. 주석처리 할것면 <?php// 붙이면안됩니다. <?php // 이렇게 뛰어쓰기 해주세요 아니면 // 제거하세요
그리고 또한 $view['file'][$i] 이부분도 존재하지않거나 배열키가 없으면 경고 뜰수도 있습니다. isset() 함수를 써주세요
if (isset($view['file'][$i]['view'])) {
echo get_view_thumbnail($view['file'][$i]['view']);
}
전체 적으로 참고하실부분은 html 주석과 php 주석은 분명 틀린다라는점 하여 이런부분도 혼돈될수도 있는 부분들은 아예 제거해버리시기 바랍니다.
이런 부분들이 예전 구버전 PHP에서는 그냥 경고 수준으로 넘어가거나 자동으로 문자열로 처리해줬기 때문에 큰 문제가 없어 보였을 겁니다. 하지만 5.x 이후에는 자동변환이 엄격해졌고 특히 php8이상에서는 아예 fatal error 로 바꿔어서 실행이 중단되버립니다.
올바른 코딩 방법을 다시 점검하고 배우시기 바랍니다.
하나씩하나씩. 느림의 미학으로 응원드립니다. 화이팅~
이전에 하셨던 모든 질문 글을 다시 한번
복기해 보시기 바랍니다.

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