lorenzen adlı üyeden alıntı:
mesajı görüntüle

<?php
ob_start();
$sayfa_adresi = $_SERVER["HTTP_REFERER"];
$icerik = "[InternetShortcut]\r\n";
$icerik .= "URL=$sayfa_adresi";
echo $icerik;
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=kisayol.url");
?>Birde bunu deneyin ve unutmayın @ hataları gidermez, sadece kullanıcıya yansımasını önler, buda hatanın çözüldüğü anlamına gelmez.Bunu deneyin olmazsa konuşuruz tekrar ekrana onu yazması normal çünkü zaten echo $icerik; ile yazdırıyoruz.
Deneyiniz, olumsuz sonuç olursa tekrar dönüş yapabilirsiniz.
Kolay gelsin.
Dip Not: Bu kodda referer kullanılmak zorunda kalınmış ama bu durum sorun yaratabilir bunun için biraz kod yazıp yenileyeceğim.
<?php
ob_start();
$sayfa_adresi = $_SERVER["HTTP_REFERER"];
$a = parse_url($sayfa_adresi);
if($a["host"] == "siteadiniz.com"){
$icerik = "[InternetShortcut]\r\n";
$icerik .= "URL=$sayfa_adresi";
echo $icerik;
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=kisayol.url");
}else{
header('Location: http://siteadiniz.com/');
}
?>Önceki koda bakarsak REFERER alıyorduk çünkü ziyaretçi sizin sayfanızdan bir butona tıklayıp bu sayfaya gelecek ve bu yolla url yi kaydedecekti ama eğer referer başka bir yerden gelir veya referer bilgisi olmazsa sıkıntı oluşacaktı.Bu yüzden $a[host] == "siteadresiniz.com" şartını koyarak sadece kullanıcı sizin sitenizden geldiyse ve bu aynı zamanda referer'in dolu olduğununda göstergesidir, bir url oluşuyor ve gereksizlikten kurtulmuş oluyoruz.
Kolay gelsin.
