2013-07-10 1 views
0

codeigniter/grocerycrud를 사용하고 있으며 정렬 열을 선택할 때이 순서를 기억하여 다른 방향 (적어도 만료 날짜 내)을 다시 정렬 할 수있는 유일한 옵션을 제공합니다. 정렬과 관련된 쿠키 만 삭제하는 버튼을 만들고 싶습니다. 지금까지 쿠키의 예PHP 또는 JavaScript로 특정 쿠키 접두어를 삭제하려면 어떻게해야합니까?

hidden_sorting_4884b0e57a895f932a0a6f5657128eda

... 그리고 hidden_sorting_로 시작을 정렬 쿠키의 모든 그래서 명확한 정렬 버튼을 가지고 의미가 ... 될 것이다. 이것이 가능한지에 대한 아이디어가 있습니까? 내장 된 기능에 대한 철저한 조사가 이루어지지 않았습니다.

내가 ...과 같이 jQuery를 함께 전체 이름을 삭제할 수 있습니다

$.cookie("hidden_sorting_4884b0e57a895f932a0a6f5657128eda", null); 

하지만 접두사 선택에 문제가. jQuery에서 다음과 같은 작업을 수행 할 수 있습니다.

$('input[products*="hidden_sorting_"]').val 

내가 입력을 찾고 있었지만이를 쿠키로 가져 오는 것이 필요한 것입니다.

답변

1

이 밖으로 시도 :

<?php 
session_start(); ob_start(); 
function destroyCookies($prefix){ 
    if(isset($_COOKIE)){ 
    foreach($_COOKIE as $i => $v){ 
     if(preg_match("/^$v/", $prefix)){ 
     setcookie($i, '', time()-3600); unset($_COOKIE[$i]); 
     } 
    } 
    } 
} 
destroyCookies('hidden_sorting_'); 
ob_end_flush(); 
?> 

당신은 언제든지 쿠키를 설정할 수 있도록, PHP와 함께, ob_start()을 사용해야합니다.

+0

나는 놀고 놀고 있었다. 대신이 유형의 쿠키 값에 액세스하는 방법에 대해 알고 싶습니다. 매우 간단합니다. products_model. 각 열은 자체 이름이 있습니다. – Shane

+0

'implode (';', $ _COOKIE);와 같이 쿠키를 실제로 표시하는지 확인해보십시오. – PHPglue

+0

다음과 같이 목록을 얻습니다 :'1; 100; 오름차순; products_upc; ; products_model; 1; 50; 오름차순; price_markup_9; ; ; ... ... – Shane