테스트 사이트 - 개발 중인 베타 버전입니다

if문의 else문이 적용이 안되는데 문제가 뭔지 확인좀해주세요 채택완료

phpers 4년 전 조회 1,708

주문내역 리스트에서 거래처별로 구분되는 아이디를 a, b로 구분을 지었고,

</p>

<p><td headers="delino"></p>

<p>        <?php </p>

<p>            $partner_id_check = $row['partner_id'];</p>

<p>            if ($partner_id_check='a') { ?></p>

<p>                <a href="<a href="http://www.hanjin.co.kr/Delivery_html/inquiry/result_waybill.jsp?wbl_num=<?php echo $row['od_invoice']; ?>" target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a>   " target="_blank" rel="noopener noreferrer">http://www.hanjin.co.kr/Delivery_html/inquiry/result_waybill.jsp?wbl_num=<?php echo $row['od_invoice']; ?>" target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a>   </a></p>

<p>            <?php </p>

<p>            } else if($partner_id_check='b') { ?></p>

<p>              <?php echo $row['partner_id'];?><a href="<a href="https://www.doortodoor.co.kr/parcel/doortodoor.do?fsp_action=PARC_ACT_002&fsp_cmd=retrieveInvNoACT&invc_no=<?php echo $row['od_invoice']; ?> " target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a> " target="_blank" rel="noopener noreferrer">https://www.doortodoor.co.kr/parcel/doortodoor.do?fsp_action=PARC_ACT_002&fsp_cmd=retrieveInvNoACT&invc_no=<?php echo $row['od_invoice']; ?> " target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a> </a></p>

<p>            <?php } ?></p>

<p>        </td></p>

<p>

이렇게도 해보고, 아래처럼도 해봤습니다.

</p>

<p><td headers="delino"></p>

<p>        <?php </p>

<p>            if ($row['partner_id'] = 'a') { ?></p>

<p>                <a href="<a href="http://www.hanjin.co.kr/Delivery_html/inquiry/result_waybill.jsp?wbl_num=<?php echo $row['od_invoice']; ?>" target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a>   " target="_blank" rel="noopener noreferrer">http://www.hanjin.co.kr/Delivery_html/inquiry/result_waybill.jsp?wbl_num=<?php echo $row['od_invoice']; ?>" target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a>   </a></p>

<p>            <?php </p>

<p>            } else if($row['partner_id'] = 'b') { ?></p>

<p>              <?php echo $row['partner_id'];?><a href="<a href="https://www.doortodoor.co.kr/parcel/doortodoor.do?fsp_action=PARC_ACT_002&fsp_cmd=retrieveInvNoACT&invc_no=<?php echo $row['od_invoice']; ?> " target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a> " target="_blank" rel="noopener noreferrer">https://www.doortodoor.co.kr/parcel/doortodoor.do?fsp_action=PARC_ACT_002&fsp_cmd=retrieveInvNoACT&invc_no=<?php echo $row['od_invoice']; ?> " target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a> </a></p>

<p>            <?php } ?></p>

<p>        </td></p>

<p>

 

partner_id를 출력해보면, 주문내역 각 행에 거래처별로 구분되어 주문내역은 출력이 되고 있는데

해당주문의 송장조회시 각 거래처별 구분되는 배송사로 링크가 변경이 안되는데

도움 부탁드립니다.

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

답변 2개

채택된 답변
+20 포인트
해피정
4년 전
<td headers="delino">
        <?php 
echo "partner_id = ".$row['partner_id'],"<br>"; // 값이 찍히는지 확인해보세요.
echo "od_invoice = ".$row['od_invoice'],"<br>"; // 값이 찍히는지 확인해보세요.
            if ($row['partner_id'] == 'a') { // = 가 아니라  == 로 사용해야합니다 ?>
                <a href="http://www.hanjin.co.kr/Delivery_html/inquiry/result_waybill.jsp?wbl_num=<?php echo $row['od_invoice']; ?>" target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a>   
            <?php 
            } else if($row['partner_id'] == 'b') { ?>
              <?php echo $row['partner_id'];?><a href="https://www.doortodoor.co.kr/parcel/doortodoor.do?fsp_action=PARC_ACT_002&fsp_cmd=retrieveInvNoACT&invc_no=<?php echo $row['od_invoice']; ?> " target="blank"><?php echo ($row['od_invoice'] ? $row['od_invoice'] : '-'); ?> </a> 
            <?php } ?>
        </td>
로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

p
phpers
4년 전
등호를 그냥 =로 사용했을때 아래와 같이 출력이되며,
링크는 한진택배로 되며, B로 출력되는 송장번호도 한진택배로만 링크가 활성화되네요 ㅠ
partner_id = A
od_invoice = 418877051424
418877051424

==로 하면 인보이스 넘버가 출력이 안되며, =로하면 인보이스 넘버는 출력이됩니다.
해피정
4년 전
A 와 a 는 다른값입니다
partner_id = A 라고 찍혔다는 이야기는 비교값이 a 가 아니라 A 라는 의미가 됩니다
저장되는 값이 A 인지 a 인지를 확인해보세요
p
phpers
4년 전
해피정님 자체 해결했습니다. <td>섹션 위로 옮겼더니 되더라구요 ㅋㅋ. 아무튼 도움주시려고 노력해주셔서 감사합니다. 대소문자는 큰 문제는 없는거 같구요. 그래도 모르니 다 대문자로 변경을 하긴했습니다.

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

s
sinbi Expert
4년 전

등호는 = 가 아니라, == 입니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

p
phpers
4년 전
이렇게도 해봤었는데 이렇게 했을때는 송장번호가 아예 주문내역에 불러와지질않았습니다. 지금 다시 적용했는데도 동일하게 번호자체가 공백이네요 ㅠ
s
sinbi
4년 전
변수에 값이 있는지부터 먼저 체크해 보세요.
p
phpers
4년 전
도움주시려 노력해주셔서 감사합니다. 해결되었습니다.

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

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

로그인