채택완료

(초보) 좌측메뉴 boxcategory 적용 관련 변수 조건 문의

2019-05-17 (금) 15:48:53 2,836

우선 너무 초보라서 설명하는것 조차 어렵습니다. 이해 부탁드립니다.

영카트5 - 테마사용중이고 좌측메뉴 활용된 페이지 입니다.

제품목록 보기 , 제품내용 보기 에서 좌측 메뉴 사용중입니다.

왼쪽 메뉴 php 파일에서 boxcategory1 , 2, 3 을 구분해서 적용중입니다. (대분류를 나눠서 사용중)

boxcategory 를 적용할 조건을 판단하여 불러오는 php 입니다.

제품 등록시 입력되는 record 중 일부 입니다.

ca_id // 카테고리 명

it_id  //상품코드
it_name  //상품명 (상품군+모델명)
it_brand //브랜드명
it_model //모델명
it_basic //제품군명
it_6  //설명1_특징
it_maker //사양2 _ 용량
it_5  //기타 _전압
it_origin //인터페이스방식

it_order // 상품 순서

it_sell_email // 관리자메일

문제없는 코드

Copy
<?php
if(substr($ca_id,0,2) == 'x1')
include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php'); // 상품분류 ?>

<?php
if(substr($it_id,0,2) == 'x1')
include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php'); // 상품분류 ?>

if(substr($it_id,0,2) == 'x1')   제가 해석하기론 it_id 변수의 앞2자리가 x1 을 포함하면

boxcategory3.skin.php 으로 적용하라는 내용으로 압니다.

$it_id,0,2 대신에 it_sell_email  이나 it_order 를 조건으로 변경 하고 싶은데

두개다 각각 적용해 보았는데 결과에 반영이 안되더라구요... 

(it_id 를 임의값으로 저장되게하려합니다)

이럴경우 별도로 호출을 해야하나요??

해당php 파일에는 ca_id 나 it_id 를 별도로 호출하는 명령어는 안보이던데요...

질문이 번잡해도 양해바라며 답변 부탁드립니다~ ㅠ

(제품등록시  it_sell_email=x1  , it_order=11 입력저장 하였음)

변수 적용이 안먹히는 코드

Copy
<?php
if(substr($ca_id,0,2) == 'x1')
include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php'); // 상품분류 ?>

<?php
if(substr($it_sell_email,0,2) == 'x1')
include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php'); // 상품분류 ?>

<?php
if(substr($it_order,0,2) == '11')
include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php'); // 상품분류 ?>

정상링크   http://www.powertm.co.kr/shop/item.php?it_id=x12000-110

적용안되는링크 http://www.powertm.co.kr/shop/item.php?it_id=1557317080

|

답변 1개 / 댓글 3개

채택된 답변
+20 포인트
2019-05-17 (금) 17:39:34

if (substr($it_id,0,2) == 'x1') 

=> $it_id 변수에 저장된 문자열의 앞 2자리가 'x1'이면~ 으로 해석한 부분은 맞습니다.

it_sell_email 에 'x1' 값을 저장하였다면..

if (substr($it_sell_email, 0, 2) == 'x1') 문은 if절의 조건이 참이 되어 실행되는 것이 맞습니다.

만약 실행되지 않았다면 $it_sell_email 에 다른값이 저장되어 있다거나 빈값이거나 할 때 입니다.

echo 문으로 실제 저장된 내용을 확인해 보는 것이 좋습니다.

echo $it_sell_email;

exit;

if (substr($it_sell_email, 0, 2) == 'x1')

  ~

$it_id 값, $it_sell_email 값으로 조건문을 처리하는 방법과 관련한 예시는 다음과 같습니다.

if ($it_id == '1557317080') // $it_id 의 값이 '1557317080' 이라면..

  include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php');

//-----------

if ($it_sell_email == 'aabbccdd') // $it_sell_email 의 값이 'aabbccdd' 이라면..

    include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php');

//-----------

if (substr($it_sell_email, 0, 2) == 'aa') // $it_sell_email 의 앞 2글자가 'aa' 이라면..

    include_once(G5_SHOP_SKIN_PATH.'/boxcategory3.skin.php');

답변에 대한 댓글 3개

우선 답변 감사합니다~~



문제는 $ca_id 나 $it_id 는 정상인식 되는데 다른 변수들은 인식이 안되네요...

분명 필드값은 존재합니다. 제품뷰에 필드 표시도 됩니다.

$it_sell_email , $it_order 등등 은 안되네요 ㅜㅜ
2019-05-17 (금) 18:39:41
$it_id, $ca_id 는 GET 변수입니다. http://crealnet.blogspot.com/2014/12/php-get.html

http://www.powertm.co.kr/shop/item.php?it_id=123 주소로 접속하면 $it_id 는 '123' 값


해당 제품의 DB 정보와 매칭된 변수를 사용하려면..
$it['it_sell_email'] , $it['it_order'] 로 사용하시면 됩니다.

if (substr($it_sell_email, 0, 2) == 'x1')
=> if (substr($it['it_sell_email'], 0, 2) == 'x1')
마르스컴퍼니 님!!! 감사합니다!!


변수 적용 형식 이 핵심이었군요 ㅠㅠ


덕분에 잘 해결 되었습니다~!!

답변을 작성하려면 로그인이 필요합니다.