옵션필드 중복검색

안녕하세요~

https://blog.naver.com/PostView.nhn?blogId=chan2rrj&logNo=221264876651

해당 링크에서 이해가 가지 않아 글남깁니다 ㅠㅠ

<input type="hidden" name="kboard_search_option[address][key]" value="address">
			<input type="hidden" name="kboard_search_option[address][compare]" value="LIKE">
			<input type="hidden" name="kboard_search_option[address][wildcard]" value="both">
			<input type="text" name="kboard_search_option[address][value]" value="<?php echo isset($kboard_search_option['address']['value']) ? $kboard_search_option['address']['value'] : ''?>" placeholder="address 옵션 필드 검색">

위의 코드는 결국 하나의 옵션필드만 검색하는 input태그가 되는것이 아닌가요?

 

<!-- inquiry_type 옵션 필드 검색 -->
		<?php $inquiry_type = isset($kboard_search_option['inquiry_type']['value']) ? $kboard_search_option['inquiry_type']['value'] : '';?>
		<input type="hidden" name="kboard_search_option[inquiry_type][key]" value="inquiry_type">
		<input type="hidden" name="kboard_search_option[inquiry_type][compare]" value="LIKE">
		<input type="hidden" name="kboard_search_option[inquiry_type][wildcard]" value="both">
		<select name="kboard_search_option[inquiry_type][value]">
			<option value="">문의 유형 선택</option>
			<option value="제작의뢰"<?php if($inquiry_type == '제작의뢰'):?> selected<?php endif?>>제작의뢰</option>
			<option value="홍보의뢰"<?php if($inquiry_type == '홍보의뢰'):?> selected<?php endif?>>홍보의뢰</option>
		</select>

위의 태그도 select에서 하나씩인거같구요

 

저는

ex) 

테이블이라는 옵션셀렉 하나에서 검색하면

option필드인것들

option1, option2, option3이 하나의 인풋태그에서 검색이 되었으면 좋겠습니다.

혹시 방법이 있을까요?

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    editor.php 파일에 option1, option2, option3을 select box로 추가했을 때

    list.php 파일에는 아래의 코드처럼 추가해주시면 됩니다.

    <?php $option1 = isset($kboard_search_option['option1']['value']) ? $kboard_search_option['option1']['value'] : '';?>
    <input type="hidden" name="kboard_search_option[option1][key]" value="option1">
    <input type="hidden" name="kboard_search_option[option1][compare]" value="LIKE">
    <input type="hidden" name="kboard_search_option[option1][wildcard]" value="both">
    <select name="kboard_search_option[option1][value]">
    	<option value="">옵션1 선택</option>
    	<option value="option1"<?php if($option1 == 'option1'):?> selected<?php endif?>>옵션1</option>
    	<option value="option11"<?php if($option1 == 'option11'):?> selected<?php endif?>>옵션11</option>
    </select>
    
    <?php $option2 = isset($kboard_search_option['option2']['value']) ? $kboard_search_option['option2']['value'] : '';?>
    <input type="hidden" name="kboard_search_option[option2][key]" value="option2">
    <input type="hidden" name="kboard_search_option[option2][compare]" value="LIKE">
    <input type="hidden" name="kboard_search_option[option2][wildcard]" value="both">
    <select name="kboard_search_option[option2][value]">
    	<option value="">옵션2 선택</option>
    	<option value="option2"<?php if($option2 == 'option2'):?> selected<?php endif?>>옵션2</option>
    	<option value="option22"<?php if($option2 == 'option22'):?> selected<?php endif?>>option22</option>
    </select>
    
    <?php $option3 = isset($kboard_search_option['option3']['value']) ? $kboard_search_option['option3']['value'] : '';?>
    <input type="hidden" name="kboard_search_option[option3][key]" value="option3">
    <input type="hidden" name="kboard_search_option[option3][compare]" value="LIKE">
    <input type="hidden" name="kboard_search_option[option3][wildcard]" value="both">
    <select name="kboard_search_option[option3][value]">
    	<option value="">옵션3 선택</option>
    	<option value="option3"<?php if($option2 == 'option3'):?> selected<?php endif?>>옵션3</option>
    	<option value="option33"<?php if($option2 == 'option33'):?> selected<?php endif?>>option33</option>
    </select>

    고맙습니다.

  • 안녕하세요~!

    코드 잘 받아보았습니다.

    제가 원하는것이 맞는지는 모르겠네요 ㅠㅠ

     

    저는 하나의 input태그(검색창)에서 검색할때 option1,option2,option3중 하나라도 포함이 되는애는 검색이 되게 하고싶습니다!

    감사합니다.

  •  

    <input type="hidden" name="kboard_search_option[model1][key]" value="model1">
    			<input type="hidden" name="kboard_search_option[model1][compare]" value="LIKE">
    			<input type="hidden" name="kboard_search_option[model1][wildcard]" value="both">
    			<input id="textbox1" type="text" name="kboard_search_option[model1][value]" value="<?php echo isset($kboard_search_option['model1']['value']) ? $kboard_search_option['model1']['value'] : ''?>" placeholder="model1 옵션 필드 검색">
    			
    			<input type="hidden" name="kboard_search_option[relation]" value="OR">
    
    			<input type="hidden" name="kboard_search_option[model2][key]" value="model2">
    			<input type="hidden" name="kboard_search_option[model2][compare]" value="LIKE">
    			<input type="hidden" name="kboard_search_option[model2][wildcard]" value="both">
    			<input id="textbox2" type="text" name="kboard_search_option[model2][value]" value="<?php echo isset($kboard_search_option['model2']['value']) ? $kboard_search_option['model2']['value'] : ''?>" placeholder="model2 옵션 필드 검색">
    
    			<input type="hidden" name="kboard_search_option[model3][key]" value="model3">
    			<input type="hidden" name="kboard_search_option[model3][compare]" value="LIKE">
    			<input type="hidden" name="kboard_search_option[model3][wildcard]" value="both">
    			<input id="textbox3" type="text" name="kboard_search_option[model3][value]" value="<?php echo isset($kboard_search_option['model3']['value']) ? $kboard_search_option['model3']['value'] : ''?>" placeholder="model3 옵션 필드 검색">
    
    			<script>
    			 jQuery("#textbox1").keyup(function(){
    				var textinput = jQuery('#textbox1').val().substring(0,255);
    				jQuery("#textbox2").val(textinput);
    				jQuery("#textbox3").val(textinput);
    				jQuery("#textbox4").val(textinput);
    				jQuery("#textbox5").val(textinput);
    				jQuery("#textbox6").val(textinput);
    			});
    			</script>

    이런식으로 하나의 필드에 값을 입력하면 2,3,4,5,6도 받아지게 해두었습니다.

    그런데 이렇게 진행하니 검색 속도저하가 눈에 띄게 보입니다.

    다른방법이 필요해보이는데 알 수 있을까요 ..?

  • 검색하려는 옵션 필드의 개수가 많아지면 검색 속도도 느려집니다.

    어떤 목적인지 좀 더 자세하게 설명해주시면

    저희도 같이 고민해보겠습니다.

    고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요