댓글의 여분필드가 특정값이면 리스트에 표시를 하고 싶습니다.

댓글의 여분필드가 특정값이면 리스트에 표시를 하고 싶습니다.

QA

댓글의 여분필드가 특정값이면 리스트에 표시를 하고 싶습니다.

본문

댓글에서 여분필드 wr_5 을 사용하고 있는데

 

댓글중에 wr_5 의 값이 서울이라는 것이 하나라도 있다면

 

리스트에서 "신청완료"이라고 출력이되고

 

댓글중에 wr_5의 값이 서울이라는 것이 하나도 없다면

 

리스트에서 "신청하기"라고 출력하게 하고 싶습니다.

 

여러 글들을 보고 이렇게 해봤는데 모두 "신청하기"로만 출력이됩니다.

 

완전 초보라서 php 함수 잘 모릅니다. 어디부분을 어떻게 해야하는지 알려주시면 감사하겠습니다^^


<?php
$tbl = "{$g5[write_prefix]}{$bo_table}";
$sql = " select wr_5 from $tbl where wr_is_comment > 0 && wr_parent = '{$list[$i][wr_id]}'";
if ($list[$i]['wr_5']=='서울'){
echo "신청완료";
}else {
echo "신청하기";
}
?>

이 질문에 댓글 쓰기 :

답변 2

우선  wr_id 값이 어디서 오는지를 잘 판단해야 합니다.

그리고, 현재 출력하는 부분이 스킨인지, /bbs/list.php 를 수정하는건지도 판단해야죠

 

코어로직은 안건드리는게 좋습니다.

 

 


 

<?php
// $wr_id = '어디선가 받아온값 또는 URL의 wr_id ';   // <-- 존재한다고 가정

$tbl = "{$g5[write_prefix]}{$bo_table}";
$sql_add = " and wr_5 = '서울' "; // 서울의 값을 확인할경우
$sql = " select count(*) cnt from $tbl where wr_is_comment > 0 && wr_parent = '{$wr_id}' {$sql_add}";
$row = sql_fetch($sql);
$str = "신청하기";
if ($row['cnt'] > 0)
    $str = "신청완료";
echl $str;
?>

 

이런 방법으로 작성하시는게 좋습니다.

 

가급적 변수를 사용하고 불필요한 로직은 제거하는게 좀더 효과적이고 가독성도 좋죠

아래코드로 적용해 보세요


<?
$tbl = "{$g5[write_prefix]}{$bo_table}";
$sql = " select count(*) as cnt from $tbl where wr_5='서울' AND wr_is_comment > 0 AND wr_parent = '{$list[$i][wr_id]}'";
$s_cnt = sql_fetch($sql);
$s_cnt = $s_check['cnt'];
if ($s_cnt > 0){
  echo "신청완료";
}else{
  echo "신청하기";
}
?>

 

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

회원로그인

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