2017-10-19 1 views
0

처음으로 사이트에 등록 할 때 사용자가 이미 등록했는지 여부에 따라 페이지를 표시하는 컨트롤러가 있습니다.PHP : 다른 컨트롤러에서 컨트롤러를 호출하여 한 페이지 표시

조직이 이미 등록되어있는 경우 해당 페이지는 편집 할 수있는 프로필을 표시합니다. (해당 비트는 정상적으로 작동합니다) 페이지에 등록하지 않은 경우 가입 페이지가 표시됩니다

는 I이 사용했던 :

$this->call('\Controllers\RegisterOrgController'); 

사용자는 무료 기본 패키지의 옵션 또는 지불 페이지로 리디렉션하는 사용자가 필요합니다 프리미엄/프리미엄 플러스 패키지를 가지고있다. 내 문제는 등록 페이지가 표시되지만 '프리미엄'또는 '프리미엄 플러스'를 선택하고 지불 페이지를 표시하지 않을 때 조직에 등록하는 것입니다.

프로필 페이지에서 조직 등록 페이지를 확장하여 기능을 사용하는 것이 가장 좋음을 알고 있습니다. 그러나 조직 프로필 페이지는 기본적으로 프로필을 표시하기로되어 있으므로 자체 컨트롤러를 확장 (내 기억에서 두 클래스를 확장 할 수 없음)하고 폼을 표시하기 위해 등록 조직 컨트롤러를 사용합니다.

나는 javascriptangularJSasp.net/C#을 페이지를 리디렉션 할 수있는 방법을 본 적이 있지만

내가 헤더 설정하는 생각 PHP

에 적합 할 때 그들 중 누구도 지금까지 일하지 않은 :

header('location: ' . [function to get URL for new location]); 

을하지만이 는 경로가 하위 경로 (등록/조직)이므로 작동하지 않으며 사용자가 로그인되어 있고 조직 프로필에 자체 경로 이름 (조직 프로필)이있는 경우 '등록'을 볼 수 없습니다.

TL; DR : 거기에 다른 컨트롤러에서이 작업을 수행하고 여전히 기능이 컨트롤러를 호출하여 페이지를 표시 할 수있는 방법, 어떤 도움이 확실히 이해할 수있을 것이다

다른 경로를 가지고에도 불구하고, 미리 감사드립니다.

답변

0

좋아, 그래서 내가 등록 흐름에 관해서 내가 잘못하고있는 것을 알았다. 내 생각은 확인했지만, 실행은 끔찍했다, 그래서 내가 문제

(이 통계적으로 가능성이있을 수 있지만) 누군가가 비슷한 문제가 발생 된 경우를 대비 솔루션

을 공유하고자합니다 등록 프로세스를 통해 사용자는 사이트에 처음 등록하거나 가입 한 후 계정을 확인한 후 조직을 등록 할 수있었습니다. 사용자가 로그인 한 경우 등록 페이지를 볼 수있는 것으로 간주되지 않았습니다. 그러나 조직 등록 페이지가이 페이지에서 비롯되었으므로 경로가 다르기 때문에 충돌이 발생했습니다.

솔루션

  • 변경하는 대신 등록 컨트롤러를 호출하는 조직의 등록 페이지로 리디렉션하는 조직 프로필 컨트롤러.

  • 변경 사용자가 등록 페이지의 하위 경로를 확인하여 이동() 함수에서

  • 흐름 유지 로그인하고 있는지 'REGISTER'하더라도 페이지를 표시하는 등록 제어기 인증되지 않은 기능을 실행하여 로그인 할 때 등록 양식이 표시되지 않는지 확인하십시오. 이렇게하면 조직의 등록 플로우를 따르지만 등록 페이지는 표시되지 않습니다.

희망 사항은 등록 절차와 유사한 문제가있는 사용자에게 유용합니다.

관련 문제