채택완료

<? if ($mode != "main") { ?> 질문

2020-05-11 (월) 18:54:13 2,268

<? if ($mode != "main") { ?>

<form name="fphone" id="fphone" method="post" action="#">
<input type="hidden" name="ca_id1" id="ca_id1" value="<?=$ca_id1?>" />

</form>

<? } ?>

mode라는 변수가 main이 아니라면 내용을 실행하지 말라는 것인가요?

$mode = "main";라고 작성안되어 있는 페이지에서 form으로 전송했는데 실행이 되서요.

제가 잘못알고 있는건가요?

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트
2020-05-11 (월) 18:56:03

 if ($mode != "main") 

!=는 부정입니다 main이 아니라면 실행해라

답변에 대한 댓글 1개

답변 감사합니다.
else가 아니니까 아니면 실행하라가 맞는거군요.
2020-05-11 (월) 20:38:42

용어의 차이는 있겠지만 질문자의 코드는 $mode 변수가 main이 아니면 출력하라 이므로 선언되어 있지 않거나 파라미터로 $mode변수가 넘어오면 그누보드의 경우 자동으로 전역처리를 해줍니다.

따라서 파라미터로 넘어오지 않거나 선언이 안되어 있다면 출력안하게 하시려면 isset($mode)를 사용해서 같이 처리해야됩니다.

Copy
<?php

// 아래주석은 변수가 선언되 있고 main일 경우에만 출력

// if (isset($mode) && $mode == "main") {

if ($mode != "main") {

?>

<form name="fphone" id="fphone" method="post" action="#">
<input type="hidden" name="ca_id1" id="ca_id1" value="<?=$ca_id1?>" />

</form>

<?php } ?>

답변에 대한 댓글 1개

답변 감사합니다.
실행하지 않으려면 이렇게 작성하면 되는거였군요.

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