저는이 작업을 시작하는 데 어려움을 겪고 있습니다."이 작업 기억하기"루틴을 어떻게 성공적으로 구현할 수 있습니까?
동일한 페이지에 2 개의 양식이 있습니다.
첫 번째 양식은 사용자가 주소, 우편 번호, 거리, 육상, 심지어 주 이름과 같은 여러 검색 필터 중 하나를 입력 할 수있는 검색 창을 제공합니다.
검색 결과가 여러 개인 경우 Advanced Search
링크를 클릭 할 수 있습니다.
이 Advanced Search
에는 사용자가 하나 이상의 상자를 선택하여 검색 결과를 좁힐 수있는 여러 확인란이 있습니다.
위대한 작품입니다.
이제는 사용자가 쿠키를 사용하여 검색 결과를 "저장"하는 기능을 제공하므로 다음에 사용자가이 페이지를로드 할 때 마지막으로 저장된 검색 결과 이/그녀의 기본값이됩니다 검색 페이지가 변경 될 때까지 또는이 마지막 작업을 지우는 쿠키를 제거 할 때까지
이것은 지난 번이 페이지를 검색 할 때 사용자의 마지막 작업을 기억하는 것과 같습니다.
제 생각에는 PHP 쿼리의 Session 변수에 SQL 쿼리를 저장하는 것입니다. 내가 "만들려고하고 "Remember This Action"
버튼을 사용자가 클릭, 나는 그냥 쿠키에 세션 변수 값 저장 내 PHP 코드를 가질 수 그리고
. 즉
, 내가 좋아하는 뭔가를 할 것입니다 이 :
Cookies("LastAction") = Session("LastAction")
Cookies("LastAction").Expires = Date() + 365 ' expires in one year
을 마지막으로, 나는 캘리포니아 : 다음
$tsql = "SELECT Name, FeatType,
MinX, MinY, MaxX, MaxY
FROM mytable
ORDER BY ListOrder, Name DESC";
Session("LastAction") = $tsql
그리고 단순히 않는 내 PHP 페이지에 "Remember This Action"
버튼 포스트가 n은 우리의 페이지에 "반복 마지막 액션"버튼을 제공하며이하는 모든 나는 데 많은 문제
$tsql = Request.Cookies("LastAction")
$stmt = sqlsrv_query($conn, $tsql);
하나는 내가 심지어이 쿼리를 넘어 얻을 수 있다는 것입니다 수 있습니다 :
$tsql = "SELECT Name, FeatType,
MinX, MinY, MaxX, MaxY
FROM mytable
ORDER BY ListOrder, Name DESC";
분명히
Session("LastAction") = $tsql
에
세션 ("LastAction") = $ TSQL 내가 점점 계속
"무효"오류, 나는 아주, 아주 약한 PHP를하지만 열심히 와서 속도.
는 귀하의 지원은 크게 나는 여기에 몇 가지 아기 단계를 만들었
을 감사합니다.나는 수 있어요이 올바른 구문으로 활용하려면 다음
$_SESSION["LastAction"] = $tsql;
내가 PHP에서이 라인의 동등한 것입니다, 이제 올바른
setcookie('LastAction',$_SESSION["LastAction"],time() + (86400 * 365)); // 86400 = 1 year
을 설정할 수도입니까?
$tsql = Request.Cookies("LastAction")
위의 내용은 저의 가장 좋은 것으로 꼽았습니다. 그러나 그것이 옳다고 생각하지 않습니다.
기본적으로 다른 페이지에 "Remember Last Action"
버튼을 넣으려고합니다.
나서 사용
$의 TSQL = Request.Cookies ("LastAction")
해당 페이지에 다른 페이지에서 값을 잡아.
다음은 @mkumpan입니다. 추천하는 방법에 대한 아이디어가 있으십니까? –
전부는 아니며 사용자가 직접 저장된 검색에서 검색 옵션을 가져올 위치를 파악해야합니다 (검색 관련 검색어를 작성할 때 POST의 플래그를 저장하는 것이 가장 가능성이 높음). 재사용 옵션에서 검색 쿼리를 다시 작성, 실행 및 렌더링 할 코드를 찾습니다. 그러나 원래 답변의 쿠키/직렬화 방법에 대해 자세히 설명했습니다. –