여분필드 체크박스 이미지 저장 방법?

여분필드 체크박스 이미지 저장 방법?

QA

여분필드 체크박스 이미지 저장 방법?

답변 3

본문

안녕하세요 질문좀 드리겠습니다.

 

 

예를들어 게시판 글쓰기에서

여분필드를 사용해 체크박스를 만들고 

1. 사자

2. 호랑이

3.기린 

 

이렇게 이미지들을 저장하고 

체크박스 클릭하면 뷰페이지에 이미지를 노출 시키고 싶은데

 

관련 링크나 정보좀 알고 싶습니다

 

이 질문에 댓글 쓰기 :

답변 3

* [스킨 디렉토리]/write.skin.php


<input type="checkbox" name="wr_8[]" value="lion"> 사자<br>
<input type="checkbox" name="wr_8[]" value="tiger"> 호랑이<br>
<input type="checkbox" name="wr_8[]" value="giraffe"> 기린

 

* [스킨 디렉토리]/write_update.head.skin.php


<?php
if (!defined("_GNUBOARD_")) exit;
$wr_8 = implode(',', $wr_8);

 

* [스킨 디렉토리]/view.skin.php


$checked_items = explode(",", $view['wr_8']);
~

아래의 코드를 참고해보세요..

 

1. write.skin.php

<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 기존 코드 ...

// 여분 필드 체크박스 추가
?>
<div>
    <label>선택 항목:</label><br>
    <input type="checkbox" name="wr_1[]" value="lion"> 사자<br>
    <input type="checkbox" name="wr_1[]" value="tiger"> 호랑이<br>
    <input type="checkbox" name="wr_1[]" value="giraffe"> 기린
</div>

<?php
// 기존 코드 ...
?>
 

2. write_update.php

<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 기존 코드 ...

// 여분 필드 데이터 저장 처리
if (isset($_POST['wr_1'])) {
    $wr_1 = implode(",", $_POST['wr_1']);
} else {
    $wr_1 = '';
}

// 기존 여분 필드 저장 코드에 추가
$sql = "INSERT INTO {$write_table} (wr_1, ...) VALUES ('$wr_1', ...)";
sql_query($sql);

// 기존 코드 ...
?>
 

3.  view.skin.php

<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 기존 코드 ...

// 여분 필드 데이터 가져오기
$checked_items = explode(",", $view['wr_1']);

// 이미지 경로 설정
$images = [
    "lion" => "path/to/lion.jpg",
    "tiger" => "path/to/tiger.jpg",
    "giraffe" => "path/to/giraffe.jpg",
];
?>

<div>
    <h3>선택된 항목:</h3>
    <?php foreach ($checked_items as $item): ?>
        <?php if (array_key_exists($item, $images)): ?>
            <img src="<?= $images[$item] ?>" alt="<?= $item ?>">
        <?php endif; ?>
    <?php endforeach; ?>
</div>

<?php
// 기존 코드 ...
?>
 

아래와 같이 적용했는데 저장시 값이 저장이 안되는데 다른이유가 있을까요 ㅠ?

write_update.php
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

// 기존 코드 ...

// 여분 필드 데이터 저장 처리
if (isset($_POST['wr_8'])) {
    $wr_8 = implode(",", $_POST['wr_8']);
} else {
    $wr_8 = '';
}

// 기존 여분 필드 저장 코드에 추가
$sql = "INSERT INTO {$write_table} (wr_8, ...) VALUES ('$wr_8', ...)";
sql_query($sql);

// 기존 코드 ...
?>


view.skin.php
// 여분 필드 데이터 가져오기
$checked_items = explode(",", $view['wr_8']);

// 이미지 경로 설정
$images = [
    "lion" => "/img/150.png",
    "tiger" => "path/to/tiger.jpg",
    "giraffe" => "path/to/giraffe.jpg",
];
?>


write.skin.php
 <label>선택 항목:</label><br>
    <input type="checkbox" name="wr_8[]" value="lion"> 사자<br>
    <input type="checkbox" name="wr_8[]" value="tiger"> 호랑이<br>
    <input type="checkbox" name="wr_8[]" value="giraffe"> 기린

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 1,284
© SIRSOFT
현재 페이지 제일 처음으로