게시판 생성 후 모든 게시판은 bbs/write_update.php를 통해 글이 생성되나요?
본문
저는 request 라는 게시판을 새로 만들었는데요
db에는 g5_write_request가 생성되더라구요
그래서 g5_request_file을 만들어서 파일 업로드할 때 파일 정보를 저장할 db도 따로 만들고 나머지 데이터는 g5_write_request에 저장했어요 문제는 이러고 나서 글 목록을 보면 제목만 뜨고 첨부파일이나 그런 다른 것들은 하나도 안 뜹니다
제가 write_update.php를 쓰지 않고 request_update.php를 생성해서 업로드를 했는데 제 생각에는 새로 만든 update를 써서 그런 거 같은데 어떻게 고쳐야할까요..
<?php
include_once('./_common.php');
$upload_date = date('Y-m-d H:i:s');
$sql = "INSERT INTO g5_write_request
SET mb_no = '$mb_no',
product_name = '$product_name',
category = '$category',
purchase_amount = '$purchase_amount',
purchase_unit = '$purchase_unit',
test_order = '$test_order',
test_unit = '$test_unit',
packaging = '$packaging',
certification = '$certification',
pay_select = '$pay_select',
paydetail = '$paydetail',
payer = '$payer',
request = '$request',
purpose = '$purpose',
information = '$information',
wr_reply = '',
wr_comment_reply = '',
ca_name = '',
wr_option = '',
wr_subject = '$product_name',
wr_content = '',
wr_link1 = '',
wr_link2 = '',
wr_link1_hit = '0',
wr_link2_hit = '0',
wr_hit = '0',
wr_anonymous = '',
wr_good = '0',
wr_nogood = '0',
mb_id = '$mb_id',
wr_password = '',
wr_name = '',
wr_email = '$member[mb_email]',
wr_homepage = '',
wr_datetime = '$upload_date',
wr_last = '',
wr_ip = '',
wr_facebook_user = '',
wr_twitter_user = '',
wr_1 = '$wr_1',
wr_2 = '$wr_2',
wr_3 = '$wr_3',
wr_4 = '$wr_4',
wr_5 = '$wr_5',
wr_6 = '$wr_6',
wr_7 = '$wr_7',
wr_8 = '$wr_8',
wr_9 = '$wr_9',
wr_10 = '$wr_10',
eb_1 = '$eb_1',
eb_2 = '$eb_2',
eb_3 = '$eb_3',
eb_4 = '$eb_4',
eb_5 = '$eb_5',
eb_6 = '$eb_6',
eb_7 = '$eb_7',
eb_8 = '$eb_8',
eb_9 = '$eb_9',
eb_10 = '$eb_10'
";
$file_name_1 = $_FILES['bf_file']['name'][0]; // 원본 파일명
$tmp_file_1 = $_FILES['bf_file']['tmp_name'][0]; // 임시저장소의 파일 주소
$ext_1 = substr($file_name_1, strrpos($file_name_1, '.') + 1); //확장자
$objDir = G5_DATA_PATH . '/request/';
$file_path_1 = md5(microtime()) . '.' . $ext_1; // 파일명 생성/컨버터
$dir_1 = $objDir . $file_path_1; // 최종 경로
$file_name_2 = $_FILES['bf_file']['name'][1]; // 원본 파일명
$tmp_file_2 = $_FILES['bf_file']['tmp_name'][1]; // 임시저장소의 파일 주소
$ext_2 = substr($file_name_2, strrpos($file_name_2, '.') + 1); //확장자
$file_path_2 = md5(microtime()) . '.' . $ext_2; // 파일명 생성/컨버터
$dir_2 = $objDir . $file_path_2; // 최종 경로
// $r = move_uploaded_file($tmp_file_1, $dir_1); //이미지
// $r2 = move_uploaded_file($tmp_file_2, $dir_2); //이미지
$upload_date = date('Y-m-d');
$imageSize_1 = filesize($tmp_file_1);
$imageSize_2 = filesize($tmp_file_2);
if($_FILES['bf_file']['name']){
$file_sql = "INSERT INTO g5_request_file
SET mb_no = '$mb_no',
bf_source = '$file_path_1',
bf_name = '$file_name_1',
bf_path = '$dir_1',
bf_filesize = '$imageSize_1',
bf_datetime = '$upload_date'
";
$file_sql2 = "INSERT INTO g5_request_file
SET mb_no = '$mb_no',
bf_source = '$file_path_2',
bf_name = '$file_name_2',
bf_path = '$dir_2',
bf_filesize = '$imageSize_2',
bf_datetime = '$upload_date'
";
// sql_query($file_sql);
// sql_query($file_sql2);
}
echo "<pre>";
var_dump($_FILES['bf_file']);
var_dump($sql);
var_dump($file_sql);
var_dump($file_sql2);
echo "</pre>";
exit;
sql_query($sql);
echo '<script type="text/javascript">';
echo 'alert("요청이 생성되었습니다.");';
echo 'window.location.href = "https://host.semicolons.link/23taeyoung/item/request.php";';
echo '</script>';
?>
위는 request_update.php입니다.
파일은 이렇게 받고 있습니다.
<?php $wf_cnt = count((array)$wr_file); ?>
<?php for ($i=0; $i<$wf_cnt; $i++) { ?>
<div class="row">
<div class="col col-12">
<label for="bf_file_<?php echo $i+1 ?>" class="label">파일 <?php echo $i+1; ?></label>
<label class="input">
<input type="file" class="form-control" id="bf_file_<?php echo $i+1 ?>" name="bf_file[]" value="사진선택">
<b class="tooltip tooltip-top-right">파일첨부 <?php echo $i+1; ?> : 용량 <?php echo $upload_max_filesize; ?> 이하만 업로드 가능</b>
</label>
</div>
<?php if ($is_file_content) { ?>
<div class="col col-12">
<label class="input">
<i class="icon-append fas fa-question-circle"></i>
<input type="text" name="bf_content[]" value="<?php if ($w == 'u') echo $wr_file[$i]['bf_content']; ?>" class="form-control" size="50" placeholder="파일<?php echo $i+1; ?> 설명">
<b class="tooltip tooltip-top-right">파일 <?php echo $i+1; ?> 설명을 입력 해 주세요.</b>
</label>
</div>
<div class="clearfix"></div>
<?php } ?>
<?php if ($w=='u' && $wr_file[$i]['file']) { ?>
<div class="col col-12 m-b-15">
<label for="bf_file_del<?php echo $i; ?>" class="checkbox"><input type="checkbox" id="bf_file_del<?php echo $i; ?>" name="bf_file_del[<?php echo $i; ?>]" value="1">
<i></i><?php echo $wr_file[$i]['source'];?> (<?php echo $wr_file[$i]['size']; ?>) 파일삭제</label>
</div>
<?php } ?>
</div>
<?php } ?>
답변 2
본문이미지 첨부는 어떠한 파일이든 g5_board_file에서 row에 의해 저장하고
이미지를 가져올텐데 바꾸신 소스를 보면 g5_request_file 로 바꾸셨는데
view단에서 g5_request_file에 대한 이미지를 출력하는 로직을 만드신건가요?
서버에 파일 업로드까지 처리하셨다면 VIEW단에서 g5_request_file을 바라보고 파일를
가져올수 있는 작업도 필요합니다. 그게 귀찮으심 그냥 g5_board_file에 올라가게 하시구요
// $r = move_uploaded_file($tmp_file_1, $dir_1); //이미지
// $r2 = move_uploaded_file($tmp_file_2, $dir_2); //이미지
업로드자체가 주석달린거 아닌가요?