상품1:1 문의 및 구매후기에 게시판과 같은 파일첨부 및 링크 기능을 넣으려고 합니다. 채택완료
lacomparte
7년 전
조회 1,790
g5_shop_item_qa 테이블에
qa_file 이라는 칼럼을 추가해 주었습니다. (write_board 테이블의 file과 같습니다.)
그리고 1:1 문의를 남길때 파일 업로드 해주는것도 붙여놓았습니다.
filezilla 로 확인해본 결과 data/file/itemQa 라는 폴더에
업로드가 되는것 까지 확인했구요.
그리고 g5_board_file 테이블에 row 가 insert 되는것도 확인했습니다..
근데 이걸 어떻게 출력시켜줘야 할지 모르겠네요ㅠ
bbs/write.php
bbs/view.php
skin/board/write.skin.php
skin/board/view.skin.php 를 참고해서 파일 업로드까지는 구현 한것 같습니다(?)
아래는 itemqa.skin.php 파일입니다.
</p>
<p><?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
include_once(G5_LIB_PATH.'/thumbnail.lib.php');</p>
<p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_SKIN_URL.'/style.css">', 0);
?></p>
<p><script src="<?php echo G5_JS_URL; ?>/viewimageresize.js"></script></p>
<p><!-- 1:1문의 목록 시작 { -->
<section id="sit_qa_list">
<h3>등록된 1:1문의</h3>
<div class="it_qa_idx clear">
<span class="it_qa_idx_num">번호</span>
<span class="it_qa_idx_title">제목</span>
<span class="it_qa_idx_writer">작성자</span>
<span class="it_qa_idx_date">작성일</span>
<span class="it_qa_idx_answer">답변여부</span>
</div></p>
<p> <?php
$thumbnail_width = 500;
$iq_num = $total_count - ($page - 1) * $rows;</p>
<p> for ($i=0; $row=sql_fetch_array($result); $i++)
{
$iq_name = get_text($row['iq_name']);
$iq_subject = conv_subject($row['iq_subject'],150,"…");</p>
<p> $is_secret = false;
if($row['iq_secret']) {
$iq_subject .= ' <img src="'.G5_SHOP_SKIN_URL.'/img/icon_secret.gif" alt="비밀글">';</p>
<p> if($is_admin || $member['mb_id' ] == $row['mb_id']) {
$iq_question = get_view_thumbnail(conv_content($row['iq_question'], 1), $thumbnail_width);
} else {
$iq_question = '비밀글로 보호된 문의입니다.';
$is_secret = true;
}
} else {
$iq_question = get_view_thumbnail(conv_content($row['iq_question'], 1), $thumbnail_width);
}
$iq_time = substr($row['iq_time'], 2, 8);</p>
<p> $hash = md5($row['iq_id'].$row['iq_time'].$row['iq_ip']);</p>
<p> $iq_stats = '';
$iq_style = '';
$iq_answer = '';</p>
<p> if ($row['iq_answer'])
{
$iq_answer = get_view_thumbnail(conv_content($row['iq_answer'], 1), $thumbnail_width);
$iq_stats = '답변완료';
$iq_style = 'sit_qaa_done';
$is_answer = true;
} else {
$iq_stats = '답변전';
$iq_style = 'sit_qaa_yet';
$iq_answer = '답변이 등록되지 않았습니다.';
$is_answer = false;
}</p>
<p> if ($i == 0) echo '<ol id="sit_qa_ol">';
?></p>
<p> <li class="sit_qa_li clear">
<div class="sit_qa_num">
<?php echo $iq_num; ?>
</div>
<section class="sit_qa_section clear">
<div class="sit_qa_title">
<?php
if ($row['device']=="m") {
echo "<img src=\"".$board_skin_url."/basic/img/icon_mobile.gif\" class=\"icon_device\">";
} else {
echo "<img src=\"".$board_skin_url."/basic/img/icon_desktop.gif\" class=\"icon_device\">";
}
echo $iq_subject; ?>
</div>
<div class="sit_qa_dl clear">
<p style="width: 120px;"><?php echo $iq_name; ?></p>
<p>
<?php
$today = date("Y-m-d");
$iq_time_str = substr($row['iq_time'], 0, -8);</p>
<p> if (trim($today) == trim($iq_time_str)){
// 오늘 게시물이면
echo substr($row['iq_time'], 10, -3);
} else {
// 오늘 게시물이 아니면
echo (substr($row['iq_time'], 2, 8));
}
?>
</p>
<p class="<?php echo $iq_style; ?>"><?php echo $iq_stats; ?></p>
</div></p>
<p> <div id="sit_qa_con_<?php echo $i; ?>" class="sit_qa_con">
<div class="sit_use_p">
<div class="sit_qa_qaq">
<div class="sit_qa_file">
<h2 class="sound_only">첨부파일</h2>
<ul>
<?php
// 가변 파일
for ($i=0; $i<count($row['qa_file']); $i++) {
if (isset($row['qa_file'][$i]['source']) && $row['qa_file'][$i]['source'] && !$row['qa_file'][$i]['row']) {
?>
<li>
<a href="<?php echo $row['qa_file'][$i]['href']; ?>" class="row_file_download">
<img src="<?php echo $board_skin_url ?>/img/icon_file.gif" alt="첨부">
<strong><?php echo $row['qa_file'][$i]['source'] ?></strong>
<?php echo $row['qa_file'][$i]['content'] ?> (<?php echo $row['qa_file'][$i]['size'] ?>)
</a>
<span class="bo_v_file_cnt"><?php echo $row['qa_file'][$i]['download'] ?>회 다운로드</span>
<span>DATE : <?php echo $row['qa_file'][$i]['datetime'] ?></span>
</li>
<?php
}
}
?>
</ul>
</div>
<strong>문의내용</strong>
<?php
// 파일 출력
$board = $it_id;
$v_img_count = count($row['qa_file']);
if($v_img_count) {
echo "<div class=\"sit_qa_img\">\n";</p>
<p> for ($i=0; $i<=count($row['qa_file']); $i++) {
if ($row['qa_file'][$i]) {
//echo $view['file'][$i]['view'];
echo "등록된 파일수 ".get_view_thumbnail($row['qa_file'][$i][0]);
}
}
echo "</div>\n";
}
?>
<?php echo $iq_question; // 상품 문의 내용 ?>
</div>
<?php if(!$is_secret) { ?>
<div class="sit_qa_qaa">
<strong>답변</strong>
<?php echo $iq_answer; ?>
</div>
<?php } ?>
</div></p>
<p> <?php if ($is_admin || ($row['mb_id'] == $member['mb_id'] && !$is_answer)) { ?>
<div class="sit_qa_cmd">
<a href="<?php echo $itemqa_form."&iq_id={$row['iq_id']}&w=u"; ?>" class="itemqa_form btn01" onclick="return false;">수정</a>
<a href="<?php echo $itemqa_formupdate."&iq_id={$row['iq_id']}&w=d&hash={$hash}"; ?>" class="itemqa_delete btn01">삭제</a>
</div>
<?php } ?>
</div>
<button type="button" class="btn_sit_qa_li">답변 보기</button>
</section>
</li></p>
<p> <?php
$iq_num--;
}</p>
<p> if ($i > 0) echo '</ol>';</p>
<p> if (!$i) echo '<p class="sit_empty">상품문의가 없습니다.</p>';
?>
</section></p>
<p><?php
echo itemqa_page($config['cf_write_pages'], $page, $total_page, "./itemqa.php?it_id=$it_id&page=", "");
?>
<div id="sit_qa_wbtn">
<?php if (($member['mb_level'] < 4) && ($it['ca_id'] != '1030')) { ?>
<a href="javascript:;" onclick="alert('기업회원만 작성 가능한 공간입니다.\n\n회원구분과 관련하여 자주묻는질문에서 내용을 확인하실수 있습니다.');"class="btn02 itemqa_form">질문하기</a>
<?php } else if (($member['mb_level'] >= 2) && ($it['ca_id'] == '1030')) { ?>
<a href="<?php echo $itemqa_form; ?>" class="btn02 itemqa_form">질문하기<span class="sound_only"> 새 창</span></a>
<?php } else { ?>
<a href="<?php echo $itemqa_form; ?>" class="btn02 itemqa_form">질문하기<span class="sound_only"> 새 창</span></a>
<?php } ?>
<a href="<?php echo $itemqa_list; ?>" class="btn01 itemqa_list">전체보기</a></p>
<p></div>
<script>
$(function(){
<?php if(($member['mb_level'] >= 4) && ($it['ca_id'] != '1030')) { ?>
$(".itemqa_form").click(function(){
window.open(this.href, "itemqa_form", "width=810,height=680,scrollbars=1");
return false;
});
<?php } else if (($member['mb_level'] >= 2) && ($it['ca_id'] == '1030')) { ?>
$(".itemqa_form").click(function(){
window.open(this.href, "itemqa_form", "width=810,height=680,scrollbars=1");
return false;
});
<?php } ?></p>
<p> $(".itemqa_delete").click(function(){
return confirm("정말 삭제 하시겠습니까?\n\n삭제후에는 되돌릴수 없습니다.");
});</p>
<p> $(".btn_sit_qa_li").click(function(){
var $con = $(this).siblings(".sit_qa_con");
$(".btn_sit_qa_li").text("답변 보기");
if($con.is(":visible")) {
$con.slideUp();
$(this).text("답변 보기");
} else {
$(".sit_qa_con:visible").slideUp();
$(".sps_con_btn button").text("답변 보기");
$con.slideDown(
function() {
// 이미지 리사이즈
$con.viewimageresize2();
}
);
$(this).text("답변 닫기");
}
});</p>
<p> $(".sit_qa_title").click(function(){
var $con = $(this).siblings(".sit_qa_con");
$(".sit_qa_con").slideUp();
if($con.is(":visible")) {
$con.slideUp();
$(this).parent().find(".btn_sit_qa_li").text("답변 보기");
} else {
$(this).parent().find(".btn_sit_qa_li").text("답변 보기");
$("div[id^=sqa_con]:visible").slideUp();
$con.slideDown(
function() {
// 이미지 리사이즈
$con.viewimageresize2();
}
);
$(".btn_sit_qa_li").text("답변 보기");
$(this).parent().find(".btn_sit_qa_li").text("답변 닫기");
}
});</p>
<p> $(".qa_page").click(function(){
$("#itemqa").load($(this).attr("href"));
return false;
});
});
</script>
<!-- } 상품문의 목록 끝 --></p>
<p>
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
7년 전
가변파일 주석 위에 한줄 추가해보세요.
'qa_code' 부분은 님이 bo_table 필드에 저장한 qa code를 넣으셔야 합니다.
</p>
<p><?php</p>
<p>$row['qa_file'] = get_file('qa_code', $row['iq_id']);</p>
<p>// 가변 파일</p>
<p>for ($i=0; $i<count($row['qa_file']); $i++) {</p>
<p>if (isset($row['qa_file'][$i]['source']) && $row['qa_file'][$i]['source'] && !$row['qa_file'][$i]['row']) {</p>
<p>?></p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
l
lacomparte
7년 전
넵 감사합니다 ㅎㅎ!
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인