2013-02-19 2 views
0

제가 확인하고 싶은 문제가 있습니다. 제품에 옵션이 첨부되어있는 경우 목록의 출력이 달라지기를 바랍니다. 제품에 첨부 옵션, 그것은 다음과 같은 포맷해야합니다 경우기본 PHP if 문 에코 문제

:

가격에서 : £ 1.99

제품 경우

은 그래서 출력은 다음과되고 싶어요 여기에 첨부 된 옵션, 그것은이 같은 형식되어서는 안했습니다

가격 : £ 1.99

단어에서 가격 : 가격 :인가 현지화되고 별도의 PHP 파일에서 가져옵니다.

나는 내가 잘못 여기에 갈거야 어디 모르겠지만, 이건 내 코드입니다 :

내 HTML 출력에서 ​​
<li> 
<?php if(count($options)>1): ?> 

<span class="normal"><?php echo $text_price_from; ?></span> 

<?php else: ?> 

<span class="normal"><?php echo $text_price; ?></span> 

<?php endif; ?> 

<span class="price"><?php echo $price; ?></span> 
</li> 

, 그것은 단지 범위가 비어 보여줍니다.

이상한 점은 처음 스팬에 작업을 정적으로 작성하면됩니다. 예를 들어 다음과 같이 작동합니다.

<li> 
<?php if(count($options)>1): ?> 

<span class="normal">From:</span> 

<?php else: ?> 

<span class="normal"><?php echo $text_price; ?></span> 

<?php endif; ?> 

<span class="price"><?php echo $price; ?></span> 
</li> 

누구나 아이디어가 있습니까? 플랫폼은 OpenCart입니다.

감사합니다. Mel

+0

에코하려고하는 변수가 비어 있습니다. –

+0

@jonhopkins PHP의 대체 구문입니다. . PHP를 HTML에 삽입하고자 할 때 더 읽기 쉽습니다. http://php.net/manual/en/control-structures.alternative-syntax.php –

+0

@Sven Thanks. 방금 하하를 찾았습니다. – jonhopkins

답변

1

언어 파일은

$_['text_price_from'] = 'From:'; 

가 필요합니다 및 컨트롤러가 있어야

이 가장 가능성이 문제입니다
$this->data['text_price_from'] = $this->language->get('text_price_from'); 

- 당신은 퍼즐의 조각들을 하나 누락되었습니다. 그렇지 않다면 다른 설명은 변수가 언어 파일, 컨트롤러 또는 템플릿 중 하나에서 설정 해제되고 있다는 것입니다.

+0

굉장한 감사합니다 ... 예 ... 나는 컨트롤러에 정보가 누락되었습니다. – missmonkee

+0

안녕하세요 Jay, 카테고리 페이지에서 동일한 기능을 사용하려는 경우, 즉 .... 옵션이 1보다 큰 경우 텍스트를 표시하려면 어떻게해야합니까? 그것은 보인다 $ 옵션, 나는이 추가 시도 작동하지 않습니다 계산하지만 일을 doesent 것을 하나 ... <(1) PHP 수 ($ 제품 [ '옵션'])의 경우?>?> 어떤 도움이라도 대단히 감사하겠습니다! 감사합니다. Mel – missmonkee

+0

더 복잡합니다. 컨트롤러의 제품에 대한 옵션을 개별적으로로드하고 제품 배열에 할당 한 다음 템플릿의 옵션 개수를 다시 테스트해야합니다. –

0

해당 변수를 var_dump하고 사용자가 얻는 것을보십시오.

var_dump(count($options) > 1, $text_price_from, $text_price); 
0

$text_price_from에 값이 설정되어 있는지 확인해야합니다. 변수가 비어 있으면 아무 것도 표시하지 않는 이벤트 상황이 적합합니다.