도메인에 따라 호출을 하려 하는데 SQL 질문..
본문
제가 코드를 짯는데 sql 부분에서..
조건문(접속도메인)에 따라 호출을 하려하는데..
뭐가 오류났는지....혹시 조언을 받을 수 있을까요??ㅜ
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$sql = " select * from {$g5['slide_table']} where nw_use != '미사용' && ".
if(in_array($sub_domain, $sub_domain_array_anyang)) {
'nw_1 == "true" &&'
}
if(in_array($sub_domain, $sub_domain_array_incheon)) {
'nw_2 == "true" &&'
}
."order by nw_seq asc ";
$result = sql_query($sql, false);
?>
답변 3
if(in_array($sub_domain, $sub_domain_array_anyang)) $tmp = 'nw_1 == "true" &&';
if(in_array($sub_domain, $sub_domain_array_incheon)) $tmp = 'nw_2 == "true" &&';
$sql = " select * from {$g5['slide_table']} where nw_use != '미사용' && ".$tmp." order by nw_seq asc ";
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$sql = " select * from {$g5['slide_table']} where 1";
$sql_where_array = array();
$sql_where_array[] = "nw_use != '미사용';
if(in_array($sub_domain, $sub_domain_array_anyang)) {
$sql_where_array[] = "nw_1 = 'true'";
}
if(in_array($sub_domain, $sub_domain_array_incheon)) {
$sql_where_array[] = "nw_2 = 'true'";
}
$sql.=' and '.implode(' and ',$sql_where_array);
$sql.="order by nw_seq asc ";
$result = sql_query($sql, false);
?>
1.
var_dump($g5['slide_table'])해서 값이 찍히는지 체크해보신 후,
안 찍히면 해당 값이 찍히도록 관련 파일을 인클루드 해보세요.
2.
각각의 조건 구문을 바로 연결하지 마시고,
각 조건 해당 구문을 3항 연산자를 이용해 변수처리해 SQL 구문엔 변수 넣어 표현하는 방식으로 수정해 보세요.
답변을 작성하시기 전에 로그인 해주세요.