v2.5.2
Giriş yap

Yönlendirilecek önceki sayfa site dışında sorunu.

kartal
453 defa görüntülendi ve 1 kişi tarafından değerlendirildi

Kullanıcı login olduğunda

<script>
window.history.back();    
</script>

ajax success olduğunda bu şekilde yönlendiriyorum, ama login sayfasına site dışından gelindiğinde
önceki sayfa haliyle site dışı oluyor.

Cevap yaz
Cevaplar (5)
kartal
1077 gün önce
<?php
    if(isset($_SERVER["HTTP_REFERER"])){
	$backpace = $_SERVER["HTTP_REFERER"];
}else{
	$backpace = "";
}

Forma gizli input ekledim

<input type="hidden" value="$backpace" name="backpage">

php sorguda ise login başarılı ise

$login_success = false;

if(!empty($_POST["backpace"])){
	$login_success = 1; //site içi
}else{
	$login_success = 2; //site dışı
}
?>

ajax bölümünde :

<script>
--------------------------------
if(objectR.login){
			  					
    if(objectR.login == 1){

		window.history.back();
			  					
    }else if(objectR.login == 2){

		window.location = 'http://anasayfa/';		
	}
				        			
}
</script>
sefac
1078 gün önce

Sanırım Vanilla Js kullanıyorsun. Dinamik bir yapı oluşturduysan eğer ziyaret ettiği yerleri bir değişkende tutabilirsin.
Misal ürünler sayfasından Login'e tıkladıysa değişkene ürünler sayfasını koyup login olduğunda da o değişkeni yönlendirirsin.

Eğer değişken boş ise (ki bu da login sayfasına dışarıdan bir giriş olduğunu gösterir) ana sayfaya yönlendirirsin.

kartal
1078 gün önce

Maalesef site dışından login sayfasına gelip giriş yapıldığında ana sayfaya yönlendiriyor ama bu sefer de site içinde gezinirken giriş yapıldığın da da yine ana sayfaya yönleniyor. Tayfun Hocam.

tayfunerbilen
1078 gün önce

kontrol edip ona göre yönlendirebilirsin, örneğin

if (window.history.back()){
    window.history.back();
} else {
    window.location.href = '/sonradan-gelenler-icin-bir-yere-yonlendir';
}
arduinoturkbatu
1078 gün önce

Şunu deneyebilirsin:

<?php

    header("Location: index.php");

?>