Nach so vielen Tagen versuche ich, Hilfe von Experten zu bekommen. Ich bin mit Login-Umleitung in meiner yii2 Anwendung nur in Chrome-Browser stecken,yii2 Login-Seite Umleitung Looping mit abgebrochenen Status
Das ist meine Controller-Klasse,
class InvitationsController extends Controller
{
public function beforeAction($action)
{ $array=array('index','imageupload','template','category','subcategory','slug','chooseanotherdesign');
if(!in_array($action->id, $array))
{
if (\Yii::$app->getUser()->isGuest &&
\Yii::$app->getRequest()->url !== Url::to(\Yii::$app->getUser()->loginUrl)
) {
\Yii::$app->getResponse()->redirect(\Yii::$app->getUser()->loginUrl,FALSE);
}
}
return parent::beforeAction($action);
}
public function actionGenerateevent(){
$redirectUrl="";
if(Yii::$app->request->post()){
unset(Yii::$app->session['copyinvitation']);
unset(Yii::$app->session['eventform']);
Yii::$app->session['eventform']=Yii::$app->request->post();
}
if (!Yii::$app->user->isGuest)
{
$eventid=$this->invitation->savecontinue(Yii::$app->session['eventform']);
$eventdata=$this->invitation->getEventById($eventid);
$refurl=Yii::$app->session['eventform']['refererurl'];
$aa['Events']=$eventdata;
$aa['refererurl']=$refurl;
Yii::$app->session['eventform']=$aa;
$redirectUrl = Yii::$app->urlManager->createAbsoluteUrl(['invitations/event/'.$eventdata['event_token']]);
return $this->redirect($redirectUrl);
}
}
}
Mein Workflow Schritt 1: Vorlage Formulardaten xx-Aktion an der Steuerung step2: Wenn sich der Benutzer anmeldet, wird die Aktion fortgesetzt. Else Ich versuche, die Werte in der Sitzung zu speichern und dann die Seite zur Anmeldung umzuleiten
Schritt 3: nach erfolgreicher Anmeldung Uhr gleicher xx-Aktion wieder zurück
Dieser Workflow funktioniert gut in Firefox, aber Chrom es Infinitivform Schleife ist, der sein nicht durch die Login-Seite gehen. Bitte beachten Sie am beigefügten Screenshot
Bitte helfen Sie mir, dieses Problem zu lösen.
eigentlich hier aufrufen voraktion() funktionieren so nicht brauchen, dass $ redirectUrl = "". Durch die Art und Weise, die Sie richtig sind, hat der erste Treffer von actionGenerateevent() das Problem, da Formular in dieser Aktion einreichen, gibt es das Problem. Jetzt habe ich es behoben. ich danke dir sehr. – user3535066
@ user3535066 Ich bin froh zu helfen! Könnten Sie bitte meine Antwort markieren? Danke – slinstj