2011-01-11 17 views
49

Sitemin URL'sinin internet üzerindeki bazı sayfalarda köprü olduğunu varsayalım; Bu sayfa internette herhangi bir şey olabilir - blog, orkut, yahoo, hatta stackoverflow vb. ve birileri onu tıklar ve sitemi ziyaret eder. Yani, php'yi kullanarak, ziyaretçinin sayfama geldiği önceki URL'yi kullanabilir miyiz?PHP'yi kullanarak önceki URL'yi nasıl alabilirim?

cevap

91

$_SERVER['HTTP_REFERER'] üstbilgisini kullanın, ancak bir bağlantıyı tıklatıp tıklatmadıklarına bakılmaksızın herhangi bir zamanda onu aldatmayı aklınızda bulundurun.

+0

Çapraz tarayıcı çözümü mü? – NullPointer

+0

@NullPointer: Cevabımda söylediğim gibi, kimse bunu taklit edebilir, bu yüzden sorunuzun cevabı hayır. – BoltClock

+0

Hayır. Farklı bir şekilde sormak istedim. – NullPointer

19

$_SERVER['HTTP_REFERER'] size eksik url verecek cevabı

13

$_SERVER['HTTP_REFERER'] olduğunu.

İsterseniz http://bawse.3owl.com/jayz__magna_carta_holy_grail.php, $_SERVER['HTTP_REFERER'] size http://bawse.3owl.com/ verecektir.

0

Ancak her bir url için kendi linkini oluşturabilirsiniz.

Örnek: sitesidir Bu örnekte http://example.com?auth=holasite

: example.com

öyle bağlantısını birisi açık size auth değişken için holasite değerini verirsek.

Sonra sadece $ _GET ['auth'] ve değişkene sahipsiniz. Ama saklamak ve yetkilendirmek için bir veritabanı yapmalısınız.

gibi: $ holasite = http://holasite.com (Sen de MySQL kullanabilirsiniz ..)

Ve sadece maç ve url var.

Bu yöntem biraz daha karmaşıktır, ancak çalışır. Bu yöntem, refferal sistem kimlik doğrulaması için iyidir. Ancak site adı nerede, bir kimlik yazmalı ve bu kimlikle çalışmalısınız.