php 문법 질문드립니다~

php 문법 질문드립니다~

QA

php 문법 질문드립니다~

본문

php나 jquery로 구현하려고 하는데요,

 

배열로

 

1번 항목 = [인사말,회사소개,제품소개]

2번 항목 = [인사말 작은글,회사소개 작은글,제품소개 작은글]

 

요런식으로 값을 미리 주고

 

wr_id = 1 이면

 

헤드 부분에 페이지 제목으로

1번 항목의 1 , 2번 항목의 1 을 불러오고 싶습니다.

 

인사말
인사말 작은글

이렇게 표시해주고 싶은데 방법이 궁금합니다~!

이 질문에 댓글 쓰기 :

답변 4


<?php
$arr = [
    'head' => ['N/A', '인사말','회사소개','제품소개'],
    'desc' => ['N/A', '인사말 작은글','회사소개 작은글','제품소개 작은글']
];
$wr_id = (isset($_REQUEST['wr_id']) == true) ? $_REQUEST['wr_id'] : 0;
$wr_id = (int)$wr_id;
// $wr_id = 2;
if ($wr_id < 0 || $wr_id >= count($arr['head'])) {
    $wr_id = 0;
}
 
echo 'php: ' . $arr['head'][$wr_id] . ' / ' . $arr['desc'][$wr_id];
?>
 
<hr>
 
<script>
var arr = <?php echo json_encode($arr); ?>;
var params = new URLSearchParams(window.location.search);
var wr_id = (params.has('wr_id') == true) ? params.get('wr_id').replace(/[\D]/g, '') : 0;
wr_id = Number(wr_id);
// wr_id = 2;
if (wr_id < 0 || wr_id >= arr['head'].length) {
    wr_id = 0;
}
 
document.write('JavaScript: ' + arr['head'][wr_id] + ' / ' + arr['desc'][wr_id]);
</script>

php


<?php
// 미리 정의된 배열
$sections = array(
    array("인사말", "회사소개", "제품소개"),
    array("인사말 작은글", "회사소개 작은글", "제품소개 작은글")
);
// 특정 wr_id에 해당하는 섹션을 선택
$wr_id = 1;
$selectedSection = $sections[$wr_id - 1];
// 페이지 제목 부분에 선택된 섹션을 출력
echo $selectedSection[0] . "<br>";
echo $selectedSection[1];
?>

jquery


<!DOCTYPE html>
<html>
<head>
    <title>페이지 제목</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
    <div id="page-title"></div>
    <script>
        // 미리 정의된 배열
        var sections = [
            ["인사말", "회사소개", "제품소개"],
            ["인사말 작은글", "회사소개 작은글", "제품소개 작은글"]
        ];
        // 특정 wr_id에 해당하는 섹션을 선택
        var wr_id = 1;
        var selectedSection = sections[wr_id - 1];
        // 페이지 제목 부분에 선택된 섹션을 출력
        $("#page-title").html(selectedSection[0] + "<br>" + selectedSection[1]);
    </script>
</body>
</html>

답변 감사합니다.
위 두 소스로 테스트 해보니,
wr_id = 1 일 경우나 2일 경우나 모두

인사말
회사소개

이렇게만 표시가 됩니다. 인사말 작은글은 나오지 않고,
첫번째 배열의 0,1 값이 그냥 노출되는데 어떻게 수정을 해야할까요?


<?php
// 미리 정의된 배열
$sections = array(
    array("인사말", "회사소개", "제품소개"),
    array("인사말 작은글", "회사소개 작은글", "제품소개 작은글")
);

// 특정 wr_id에 해당하는 섹션을 선택
$wr_id = 1;
$selectedSection = ($wr_id == 1) ? $sections[0] : $sections[1];

// 페이지 제목 부분에 선택된 섹션을 출력
echo $selectedSection[0] . "<br>";
echo $selectedSection[1];
?>


<?php
$a = ['인사말','회사소개','제품소개'];
$b = ['인사말 작은글','회사소개 작은글','제품소개 작은글'];
$wr_id = 1; // 예제
$key = $wr_id - 1;
if ($key >= 0) {
    echo $a[$key];
    echo $b[$key];
}

$title1 = Array("0" => "인사말", "1" => "회사소개", "3" => "제품소개");
$title2 = Array("0" => "인사말 작은글", "1" => "회사소개 작은글", "3" => "제품소개 작은글");
이렇게 배열 만드시고 
echo $title1[$view['wr_1']]
echo $title2[$view['wr_1']]
이렇게 하면 wr_1 값에 따라서 다르게 나옵니다.

이것을 목록에서 하신다면
echo $title1[$list[$i]['wr_1']]
echo $title2[$list[$i]['wr_1']]
이렇게 하고
외부 페이지에서 어떤 게시물의 내용을 가져 온 경우라면
그에 맞게 $list[$i] 나 $view 이 부분을 수정해 주면 될 것입니다.
게시물 불러오는 함수는

답변을 작성하시기 전에 로그인 해주세요.
전체 222
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT