크롬과 엣지에서 결과값이 다른데, 어느 부분이 문제인지 알 수 있을까요?

크롬과 엣지에서 결과값이 다른데, 어느 부분이 문제인지 알 수 있을까요?

QA

크롬과 엣지에서 결과값이 다른데, 어느 부분이 문제인지 알 수 있을까요?

본문

안녕하세요.

크롬과 엣지에서 결과값이 다르게 나오는데, 무엇이 문제인지 알 수 있을까요?

 

https://rotcmuseum.or.kr 에서 상단 메뉴에서 "자료관"을 클릭하면,

크롬에서는 데이터가 잘 나오는데 엣지에서는 안 나옵니다.

검색 버튼을 클릭하거나 최근 등록일자/이전 등록일자 등 selectbox를 선택하면 잘 나옵니다.

또는 접속 후 주소창에 www를 붙여서 클릭하면, 한번은 잘 나옵니다. 또 클릭하면 안 나옵니다.

 

어떤 사람은 잘 된다고 하고.

어떤 사람은 몇번 하다보면 한번씩 안나온다고 하고.

저는 아예 안나오고.

 

어느 부분이 문제인지 알 수 있을까요...

 

부탁드립니다.

 

[code]

<?php
    $sub = ' sub';
    $mobile_title = '자료관';

    include_once('../common.php');
    include_once('../head.php');
?>
    <!--CONTAINER : main 별도 사용, sub page는 rotc_sub_container 로 교체-->
    <div class="rotc_sub_container" id="list" v-cloak>
        <!--CONTENTS : main, sub page 모두 동일-->
        <div class="rotc_contents">

            <!--통합검색-->
            <div class="rotc_archive_search archive_search_sub">
                <div class="archive_small_wrap">
                    <div class="rotc_search_header">
                        <div class="search_header_title">
                            <h2>통합검색</h2>
                        </div>
                    </div>
                    <div class="archive_search_wrap">
                        <input type="search" name="searchText" id="searchText" value="<?php echo $_POST['searchText']?>" placeholder="검색어를 입력하세요">
                        <a href="javascript:void(0)" onclick="museum_search(1);">검색</a>
                    </div>
                    <div class="archive_filter_wrap">
                        <a href="javascript:void(0)" class="btn_filter"  v-bind:class="{'active':search_gubun==='detail'}">
                            <span>상세검색</span>
                            <i class="icon_filter"></i>
                        </a>
                    </div>
                </div>
            </div>

            <!--상세검색-->
            <div class="rotc_archive_detail_search" v-bind:class="{'on':search_gubun==='detail'}">
                <div class="archive_small_wrap">
                    <!--상세검색 타이틀-->
                    <div class="rotc_search_detail_header">
                        <div class="search_header_title">
                            <h2>상세검색</h2>
                            <a href="javascript:void(0)" class="search_refresh_box" onclick="search_refresh();">
                                <i class="icon_refresh"></i>
                                <span>초기화</span>
                            </a>
                        </div>
                        <a href="javascript:void(0)" class="search_detail_close">
                            <i class="icon_search_close"></i>
                        </a>
                    </div>
                    <!--상세검색 리스트-->
                    <div class="search_detail_item">
                        <dl>
                            <dt>유형</dt>
                            <dd>
                                <div class="search_item_chk_group">
                                    <div class="search_item_chk" v-for="fileCode in fileCodeList">
                                        <input type="checkbox" name="fileCode" v-bind:id="'fileCode_'+fileCode.fileCode" v-on:click="item_selected('fileCode', fileCode.fileCode);">
                                        <label v-bind:for="'fileCode_'+fileCode.fileCode">{{fileCode.fileCodeName}}</label>
                                    </div>
                                </div>
                            </dd>
                        </dl>
                        <dl>
                            <dt>대분류</dt>
                            <dd>
                                <div class="search_item_chk_group">
                                    <div class="search_item_chk" v-for="cate in cateList">
                                        <input type="radio" name="cateCode" v-bind:id="'cateCode_'+cate.itemItemCode" v-on:click="item_selected('cateCode', cate.itemItemCode);">
                                        <label v-bind:for="'cateCode_'+cate.itemItemCode">{{cate.itemItemName}}</label>
                                    </div>
                                </div>
                            </dd>
                        </dl>
                        <dl id="subCate" style="display:none">
                            <dt>소분류</dt>
                            <dd>
                                <div class="search_small_item">
                                    <div class="small_item_header" v-if="cateCode === '0004' || cateCode === '0005'">
                                        <a href="javascript:void(0)" class="checked" onclick="chosung_selected(0)">ㄱ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(1)">ㄴ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(2)">ㄷ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(3)">ㄹ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(4)">ㅁ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(5)">ㅂ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(6)">ㅅ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(7)">ㅇ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(8)">ㅈ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(9)">ㅊ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(10)">ㅋ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(11)">ㅌ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(12)">ㅍ</a>
                                        <a href="javascript:void(0)" onclick="chosung_selected(13)">ㅎ</a>
                                    </div>
                                    <div class="small_item_body" v-for="(itemList, idx) in departCateList" v-bind:id="'chosung_'+idx" v-show="idx===0" v-if="cateCode === '0004' || cateCode === '0005'">
                                        <label class="checkbox_normal" v-for="item in itemList">
                                            <input type="checkbox" name="departCateCode" v-bind:id="'departCateCode_'+item.code" v-on:click="item_selected('departCateCode', item.code);">
                                            <span>{{item.name}}</span>
                                        </label>
                                    </div>
                                    <div class="small_item_body" v-if="cateCode != '0004' && cateCode != '0005'">
                                        <label class="checkbox_normal" v-for="departCate in departCateList">
                                            <input type="checkbox" name="departCateCode" v-bind:id="'departCateCode_'+departCate.itemItemCode" v-on:click="item_selected('departCateCode', departCate.itemItemCode);">
                                            <span>{{departCate.itemItemName}}</span    >
                                        </label>
                                    </div>
                                </div>
                            </dd>
                        </dl>
                        <dl id="subjectCate" style="display:none">
                            <dt>주제</dt>
                            <dd>
                                <div class="search_item_chk_group">
                                    <div class="search_item_chk" v-for="subjectCate in subjectCateList">
                                        <input type="checkbox" name="subjectCateCode" v-bind:id="'subjectCateCode_'+subjectCate.itemItemCode" v-on:click="item_selected('subjectCateCode', subjectCate.itemItemCode);">
                                        <label v-bind:for="'subjectCateCode_'+subjectCate.itemItemCode">{{subjectCate.itemItemName}}</label>
                                    </div>
                                </div>
                            </dd>
                        </dl>
                        <dl>
                            <dt>자료생산연도</dt>
                            <dd>
                                <div class="search_input_item">
                                    <span class="search_input_item_title">기간</span>
                                    <div class="search_input_itembox">
                                        <input type="text" name="productStartYear" id="detail_productStartYear" value="<?php echo $_POST['productStartYear']?>">
                                        <span>년</span>
                                    </div>
                                    <span class="search_input_item_dash">~</span>
                                    <div class="search_input_itembox">
                                        <input type="text" name="productEndYear" id="detail_productEndYear" value="<?php echo $_POST['detail_productEndYear']?>">
                                        <span>년</span>
                                    </div>
                                </div>
                            </dd>
                        </dl>
                    </div>
                    <!--상세 검색 선택된 항목-->
                    <div class="search_detail_selected" id="search_detail_selected" style="display:none">
                    </div>
                    <!--검색 버튼-->
                    <div class="search_footer_button">
                        <a href="javascript:void(0)" onclick="search_detail(1)">검색</a>
                    </div>
                </div>
            </div>

            <!--최신자료-->
            <div class="center_view">
                <div class="archive_gallery_wrap">
                    <div class="archive_gallery_header">
                        <div class="gallery_header_count">
                            <span>총</span>
                            <span class="count">{{pageTotalCount}}</span>
                            <span>건</span>
                        </div>
                        <div class="gallery_header_select">
                            <select name="orderType" id="orderType" v-on:change="search(1)" v-model="orderType">
                                <option value="">최근 등록일자</option>
                                <option value="REGDATE:ASC">이전 등록일자</option>
                                <option value="PRODUCTDATE:ASC">이전 생산일자</option>
                                <option value="PRODUCTDATE:DESC">최근 생산일자</option>
                            </select>
                        </div>
                    </div>

                    <!--리스트 없을 때-->
                    <div class="archive_no_list" v-if="itemList.length === 0">
                        <img src="../images/icon_thumbnail.svg">
                        <p>검색 조건에 맞는 데이터가 없습니다.</p>
                    </div>

                    <div class="archive_gallery_list" v-else>
                        <div class="archive_gallery_box" v-for="item in itemList">
                            <a href="javascript:void(0)" v-on:click="museum_detail(item.iidx)">
                                <div class="archive_board_img">
                                    <div class="vedio_cover" v-if="item.imgCnt ===0 && item.videoCnt>0">
                                        <div class="icon_vedio"></div>
                                    </div>
                                    <img v-bind:src="item.imgFileUrl" v-if="item.imgFileUrl != ''">
                                </div>
                                <div class="archive_board_contents">
                                    <div class="archive_board_title">{{item.title}}</div>
                                    <div class="archive_organization">{{item.productDepartName}}</div>
                                    <div class="archive_board_date">
                                        <div>{{item.regdate}}</div>
                                        <div class="">
                                            <span>조회수</span>
                                            <span>{{item.refercount}}</span>
                                        </div>
                                    </div>
                                    <div class="archive_board_images">
                                        <div class="board_images_box" v-if="item.imgCnt>0">
                                            <span class="board_images icon_photo" title="사진"></span>
                                            <span class="board_count">{{item.imgCnt}}</span>
                                        </div>
                                        <div class="board_images_box" v-if="item.videoCnt>0">
                                            <span class="board_images icon_video" title="동영상"></span>
                                            <span class="board_count">{{item.videoCnt}}</span>
                                        </div>
                                        <div class="board_images_box" v-if="item.docCnt>0">
                                            <span class="board_images icon_document" title="문서"></span>
                                            <span class="board_count">{{item.docCnt}}</span>
                                        </div>
                                        <div class="board_images_box" v-if="item.publicationCnt>0">
                                            <span class="board_images icon_publication" title="간행물"></span>
                                            <span class="board_count">{{item.publicationCnt}}</span>
                                        </div>
                                        <div class="board_images_box" v-if="item.audioCnt>0">
                                            <span class="board_images icon_audio" title="오디오"></span>
                                            <span class="board_count">{{item.audioCnt}}</span>
                                        </div>
                                    </div>
                                </div>
                            </a>
                        </div>
                    </div>

                    <!--이전/다음 버튼-->
                    <div class="gallery_pagination">
                        <div class="gallery_pagination_group">
                            <a href="javascript:void(0)" class="gallery_page_prev" v-on:click="search(pageNum-1);" v-if="pageNum > 1"></a>
                            <div class="gallery_pagination_count">
                                <span>{{pageNum}}</span>
                                <span>/</span>
                                <span>{{lastPageNum}}</span>
                            </div>
                            <a href="javascript:void(0)" class="gallery_page_next" v-on:click="search(pageNum+1);"  v-if="pageNum < lastPageNum"></a>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <form name="fparams" id="fparams" method="post">
        <input type="hidden" name="pageNum" id="pageNum" value="<?php echo $_POST['pageNum']?>">
        <input type="hidden" name="search_gubun" id="search_gubun" value="<?php echo $_POST['search_gubun']?>">
        <input type="hidden" name="searchText" id="search_text" value="<?php echo $_POST['searchText']?>">
        <input type="hidden" name="productStartYear" id="productStartYear" value="<?php echo $_POST['productStartYear']?>">
        <input type="hidden" name="productEndYear" id="productEndYear" value="<?php echo $_POST['productEndYear']?>">
        <input type="hidden" name="orderType" id="search_orderType" value="<?php echo $_POST['orderType']?>">
        <input type="hidden" name="param" id="param" value="<?php echo $_POST['param']?>">
    </form>

       <script>
           var vueObj;
        var pageRowCount = 15;

        $(document).ready(function () {
               //Vue 선언
            vueObj = new Vue({
                el : '#list',
                data : {
                    fileCodeList : [],
                    cateList : [],
                    cateCode : '',
                    departCateList : [],
                    subjectCateList : [],
                    itemList : [],
                    pageTotalCount: 0,
                    pageNum : 0,
                    lastPageNum : 0,
                    totalPage : 0,
                    chosungList : [],
                    search_gubun : "",
                    orderType : ""
                },
                updated() {
                    search_detail_checked();
                }
            });
    
               $("input").on('keydown', function(e) {
                if(e.keyCode == 13) {
                    museum_search(1);
                }
            });

            init();    
        });

        document.onreadystatechange = function(){
            if (document.readyState === "complete") {
               search_cond();
            }
         }

        function init() {
            var params = {};
            getResponseData('fileCodeList', params, file_code_list);
            getResponseData('cateList', params, cate_list);
        }

        // 파일 코드 목록
        function file_code_list(data) {
            vueObj.fileCodeList = data.fileCodeList;
        }

        // 대분류 목록
        function cate_list(data) {
            vueObj.cateList = data.cateList;
        }

        //  소분류 분류 목록
        function depart_cate_list(data) {
            if (vueObj.cateCode == '0004' || vueObj.cateCode == '0005') {
                chosung_sort(data.departCateList);
            } else {
                vueObj.departCateList = data.departCateList;
            }
            $("#subCate").show();
        }

        //  주제 분류 목록
        function subject_cate_list(data) {
            vueObj.subjectCateList = data.subjectCateList;
            $("#subjectCate").show();
        }

        function search_cond() {
            var search_gubun = $("#search_gubun").val();
            <?php if (!is_mobile()) {?>
                vueObj.search_gubun = search_gubun;
            <?php }?>

            if (trim($("#param").val()) != "") {            
                var params = $("#param").val().split(",");
                for (k=0; k<params.length; k++) {
                    item_selected_param(params[k]);
                }
            }

            vueObj.orderType = $("#search_orderType").val();
            var param = $("#param").val();

            var pageNum = $("#pageNum").val();
            if (pageNum == "") pageNum = 1;
            search(pageNum);
    
        }

        // 아이템 목록
        function item_list(data) {
            vueObj.itemList = data.resultMap.data;
            vueObj.pageTotalCount = data.resultMap.pagingInfo.pageTotalCount;
            vueObj.pageNum = data.resultMap.pagingInfo.pageNum;
            vueObj.lastPageNum = data.resultMap.pagingInfo.lastPageNum;
            if (vueObj.pageTotalCount == 0) {
                vueObj.totalPage = 1;
            } else {
                vueObj.totalPage = parseInt((vueObj.pageTotalCount-1)/vueObj.pageTotalCount)+1;
            }

            $("#search_text").val($("#searchText").val());
            $("#productStartYear").val($("#detail_productStartYear").val());
            $("#productEndYear").val($("#detail_productEndYear").val());

            var array_param = [];
            var f = $("#search_detail_selected").find("input");
            f.each(function() {
                var code = $(this).prop("name");
                var val = $(this).val();
                var name = $(this).next().text();
                var param = code+"_"+val+"_"+name;
                array_param.push(param);
            });
            $("#param").val(array_param.join());
        }

        function museum_detail(iidx) {
            $("#fparams").prop("action", "<?php echo $root;?>/museum/museum_detail.php?iidx="+iidx);
            $("#fparams").submit();
        }        

        function search(pageNum) {
            $("#pageNum").val(pageNum);
            $("#search_orderType").val($("#orderType").val());
            var sg = $("#search_gubun").val();
            if (sg == "detail") {
                search_detail(pageNum);
            } else {
                museum_search(pageNum);
            }
        }

        function museum_search(pageNum) {
            var searchText = $("#searchText").val();
            $("#search_gubun").val("");
            $("#search_text").val(searchText);
            var params = {};
            params.sdata = searchText;
            params.orderType = $("#orderType").val();
               params.pageNum = pageNum;
            params.pageRowCount = pageRowCount;
            getResponseData('itemSearch', params, item_list);

        }

        /* 상세검색 */
        // 초기화
        function search_refresh() {
            $("#search_detail_selected").html("");
            $("#search_detail_selected").hide();
            $("input[type='checkbox']").prop("checked",false);
            $("input[type='radio']").prop("checked",false);
            $("#detail_productStartYear").val("");
            $("#detail_productEndYear").val("");
            $("#subCate").hide();
            $("#subjectCate").hide();
        }

        function item_selected(codes, val) {
            var id = codes + "_" + val;
            var selected_id = "selected_" + id;
            var item = $("#"+id+"").next().text();

            var q = $("#search_detail_selected > div");
            if ($("#"+id).is(":checked")) {
                var check_cnt = 0;
                for (i=0; i<q.length; i++) {
                    var check_id = q[i].id.substring(9);
                    if (check_id==id) check_cnt++;
                }
                if (check_cnt == 0) {
                    $("#search_detail_selected").show();
                    var html = '';
                    html += '<div class="search_selected_box" id="' + selected_id + '">';
                    html += '    <input type="hidden" name="' + codes + '" value = "' + val + '">';
                    html += '    <span>' + item + '</span>';
                    html += '    <a href="javascript:void(0)" onclick="delete_selectedbox(\'' + id + '\', \'' + selected_id + '\');"></a>';
                    html += '    </div>';
                    $(".search_detail_selected").append(html);
                }
            } else {

                $("#selected_"+id).remove();
            }

            if (codes == "cateCode") {
                vueObj.cateCode = val;
                var params = {}
                params["cateCode"] = val;
                getResponseData('departCateList', params, depart_cate_list);
                getResponseData('subjectCateList', params, subject_cate_list);
            }
            
            for (i=0; i<q.length; i++) {
                if (q[i].id.substring(9,14) == "cateCode_") { // 대분류

                } else {
                    var id = q[i].id.substring(9);
                }
            }
        }

        function item_selected_param(params) {
            var array_param = params.split("_");
        
            var codes = array_param[0];
            var val = array_param[1];
            var id = codes + "_" + val;
            var name = array_param[2];
            var selected_id = "selected_" + id;

            $("#search_detail_selected").show();
            var html = '';
            html += '<div class="search_selected_box" id="' + selected_id + '">';
            html += '    <input type="hidden" name="' + codes + '" value = "' + val + '">';
            html += '    <span>' + name + '</span>';
            html += '    <a href="javascript:void(0)" onclick="delete_selectedbox(\'' + id + '\', \'' + selected_id + '\');"></a>';
            html += '    </div>';
            $(".search_detail_selected").append(html);

            
            $("#"+id).prop("checked", true);
            if (codes == "cateCode") {
                var params = {};
                params["cateCode"] = val;
                console.log(val);
                getResponseData('departCateList', params, depart_cate_list);
                getResponseData('subjectCateList', params, subject_cate_list);
               } else {
                   
               }
        }

        function delete_selectedbox(id, selected_id){
               $("#"+id).prop("checked", false);
               $("#"+selected_id).remove();
            var q = $("#search_detail_selected > div");
            if (q.length == 0) {
                $("#search_detail_selected").hide();
            }
        }

        var chosung = ["ㄱ","ㄲ","ㄴ","ㄷ","ㄸ","ㄹ","ㅁ","ㅂ","ㅃ","ㅅ","ㅆ","ㅇ","ㅈ","ㅉ","ㅊ","ㅋ","ㅌ","ㅍ","ㅎ"];
        function chosung_hangul(str) {
          result = "";
          for(k=0;k<str.length;k++) {
            var code = str.charCodeAt(k)-44032;
            if(code>-1 && code<11172) result += chosung[Math.floor(code/588)];
          }
          return result;
        }
        
        function chosung_sort(data) {
            var departCateList = [];
            var idx = 0;
            for (i=0; i<chosung.length; i++) {
                arrItem = [];
                for (j=0; j<data.length; j++) {
                    var itemName = data[j].itemItemName;
                    if (vueObj.cateCode == '0004') {
                        var arr = data[j].itemItemName.split(" ");
                        itemName = arr[0];
                    }                    
                    var item = {};
                    item["name"] = itemName;
                    item["code"] = data[j].itemItemCode;

                    if (chosung[i] == chosung_hangul(itemName.substring(0,1))) {
                        arrItem.push(item);                    
                    }
                }
                if (i!=1 && i!=4 && i!=8 && i!=10 & i!=13) {
                    departCateList[idx] = arrItem;
                    idx++;
                }
            }
            vueObj.departCateList = departCateList;
        }
       &

이 질문에 댓글 쓰기 :

답변 3

Ctrl + F5 로 새로고침 할경우 www 든 클릭 후 든 잘 나옵니다.

그러다는것은 결국 cache 문제로 보여지네요...

 

최상위 head 쪽에

("Cache-Control: no-store, no-cache, must-revalidate");
("Cache-Control: post-check=0, pre-check=0", false);
("Pragma: no-cache");
를 걸어보세요

네 크롬 안되네요;--;; 그리고 전체적으로 볼때 크롬이네 엣지나 보면 새로  고침이나 메뉴 이동시 리셋 되서 하단 푸터 정보가 순간 보입니다. 일부로 그렇게 표현한건 아닌듯합니다. 확인 해보셔요 뭐 코딩후 리턴값 오류나듯이요 

답변을 작성하시기 전에 로그인 해주세요.
전체 20
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT