2013-03-12 2 views
1

게스트 사용자가 허용 된 모든 PHP 페이지에서 사용자의 현재 URL을 $_COOKIE['redirect']에 저장합니다. 그러나 각 페이지에는 로그인 링크가 있습니다. 사용자가 로그인을 클릭하면 성공적으로 인증 된 후 $_COOKIE['redirect']을 참조하여 마지막 페이지로 사용자를 리디렉션하는 로그인 페이지로 이동합니다.로그인 후 리디렉션 쿠키, 양식 처리 방법은 무엇입니까?

사용자가 로그인 페이지로 이동할 수있는 페이지 중 하나가 이전 페이지에서 양식을 제출 한 후 에 도달 한 페이지라는 점을 제외하고는 모두 완벽하게 작동합니다. 사용자가 해당 페이지로 리디렉션됩니다 그래서

그것을 이전 페이지의 양식에서 채우는 데 필요한 정보를 누락 등이 깨진 링크가 표시하는 것은 그래서 다음과 같이이다 :

  1. 사용자는 1 페이지에 2 페이지의 "게시물"을 통해 정보를 제출합니다.
  2. 사용자는 2 페이지에 있으며 로그인 페이지로 이동하는 "로그인"링크를 사용하기로 결정했습니다.
  3. 로그인 기능은 사용자를 인증 한 다음 사용자가 로그인하기 전의 페이지 2 (예 : 2 페이지)로 리디렉션합니다.
  4. 페이지 2에는 페이지 1에서 더 이상 정보가 전달되지 않으므로 엉망입니다 링크 및 텍스트 등

내가 모든 것을하고있는 방식을 제외하고는 어떤 해결책이 있습니까? 어쨌든 리디렉션 URL은 이전 페이지를 통해 게시 된 중요한 정보를 어떻게 든 기억할 수 있습니까?

+1

왜 POST 정보를 다른 쿠키에 저장하지 않습니까? 양식이 게시 될 때 데이터를 직렬화하고 사용자가 해당 페이지로 리디렉션되면 쿠키를 직렬화하여 양식을 채 웁니다. – vcampitelli

+0

jquery 쿠키를 확인하고 데이터를 serialize/unserializing하기 위해 지금까지 다음과 같이 작성했습니다 : '$ .cookie ('my_form ', $ ('# designform '). serialize());'. 그러나 비 직렬화하는 방법? – user961627

답변

1

내 가장 좋은 방법은이 ..

시나리오 : 사용자가 일부 데이터를 제출 한 후 2 페이지에 온다. 그리고 쿠키가 해당 페이지로 그를 리디렉션합니다

솔루션 : 그래서보다는 단순히 그가 필요한 데이터가 나던 경우 PAGE1하는 페이지 2로 사용자를 리디렉션 (내가 쓸모가 생각하는) 데이터를 다시 다시 제출 ..

그리고 이것은 사용자가 직접 post2 ... ..의 URL을 입력하면 어떻게됩니까? 왜냐하면 게시물 데이터가 없기 때문입니다.) 그럼에도 불구하고이 문제가 발생합니다. 그래서 위의 해결책은 이런 일이 일어나지 않게합니다.