Javascript ile şu an ki sayfadan bir önceki sayfaya geri dönme işlemini yapacağız. Ancak bir önceki sayfa kendi sitemize ait bir sayfa değil ise belirlediğimiz bir sayfaya kontrollü yönlendirmesini yapacağız.
window.history.back();
Yukarıdaki kod ile javascript önceki sayfaya yönlendirme işlemi yapılabilir. Eğer bir önceki sayfa kendi sitemize ait bir sayfa ise bu kodu çalıştıracağız. Aşağıdaki fonksiyon ile bu kontrolü yapıp gerekli yönlendirmeyi yapabiliriz.
function goBack(){
var default_url = "./"; //varsayilan url
var pathArray = document.referrer.split('/'); //bir onceki sayfa url adresi
if (pathArray.indexOf(window.location.hostname) != -1) { //bir onceki sayfa, kendi sunucumuzda yer alıyorsa
window.history.back(); //bir onceki sayfaya yonlendir
}else{ //degilse
window.location = default_url; //istenilen url adresine yonlendir
};
}
Varsayılan olarak yönlendirebileceğimiz bir sayfanın url adresini default_url değişkenine atıyoruz. Ardından bir önceki sayfayı buluyoruz ve bir önceki sayfanın site ismi ile şu an ki sayfanın site ismini kontrol ediyoruz. Eğer site isimleri aynı ise, aynı sitede olan 2 sayfa ise bir önceki sayfaya yönlendirme işlemini gerçekleştiriyoruz. Eğer başka bir siteden bulunduğumuz sayfaya gelindiyse varsayılan olarak belirtilen adrese yönlendirme yapıyoruz. Böylelikle javascript geri dön işlemini kontrollü bir şekilde gerçekleştirebiliyoruz.