2014-11-27 1 views
1

결제 과정에 이미 저장된 청구 지 주소를 표시하는 데 문제가 있습니다.Magento : 저장된 청구 지 주소를 검색 할 수 없습니다.

<?php echo $this->getAddressesHtmlSelect('billing') ?> // For billing 
<?php echo $this->getAddressesHtmlSelect('shipping') ?> // For shipping 

문제는 결제 드롭이 배송 것과 동일한 값을 갖는다는 것이다 : 은 기본적으로, 기존의 코드 (OnePageCheckout)는 기존의 주소 드롭 다운리스트를 표시하기 위해 다음 코드를 사용한다.

<?php echo $this->getAddressesHtmlSelect('billing') ?> // for billing 
<?php echo $this->getAddressesHtmlSelect('shipping') ?> // for shipping 

배송 결제는 출하 값을 올바른 도시되어

드롭을 도시하는 코드는 다음과 같다.

하지만이 DB에 다음 쿼리를 수행 할 경우 :

select * from sales_flat_quote_address where customer_id = <my_customer_id>; 

나는 분명히이 개 주소를 볼 수 address_type 배송 하나, address_type 청구 하나.

보고 된 방법 here에는 동일한 문제가 있습니다.

내가 갇혔다 ... 어떤 힌트를 주셔서 감사합니다. 감사.

편집 :

MySQL은 SELECT :

SELECT address_id, same_as_billing, address_type FROM sales_flat_quote_address WHERE customer_id = 9419; 

+------------+-----------------+--------------+ 
| address_id | same_as_billing | address_type | 
+------------+-----------------+--------------+ 
|  28338 |    0 | shipping  | 
|  28353 |    0 | billing  | 
|  28354 |    0 | shipping  | 
+------------+-----------------+--------------+ 

답변

1

젠토는 고객 속성을 좋아하지 속성 판매 따옴표로 sales_flat_quote_address 같이 고객의 주소 (배송비 만 청구)을 절약 할 수 있습니다. 그래서 우리는 두 개의 다른 주소를 유지할 수 있습니다. 물론 두 가지 주소 청구서 발송 및 배송을 볼 수 있습니다. 그러나 그 테이블에는 same_as_billing이라는 필드가 있습니다. 이것 좀 봐. 본 소송은 0 또는 1입니다. Magento는 1이 포함되어있는 경우 배송 및 청구에 동일한 주소를 표시하거나 그렇지 않으면 두 개의 다른 주소를 표시합니다 (실제로 배송 주소와 같은 체크 아웃 중에 옵션이 있음). 나는 네 문제를 해결했다고 생각해.

업데이트 :

그것은 고객이 기본 주소가 있어야하는 필요가 없습니다.

+0

답장을 보내 주셔서 감사합니다. 테이블에 체크 표시가되어 있습니다. 쿼리 결과의 형식을 지정하기 위해 업데이트 된 질문을 확인하십시오. –

+1

고객이 아직 주문을하지 않았으며 자신의 (임의의) 주소를 기본 주소로 저장하지 않은 것처럼 보입니다. 기본 주소가 없다는 뜻입니다. 그래서 그것은 null을 반환합니다. – Elavarasan

관련 문제