News:

SMF 2.1.6 has been released! Take it for a spin! Read more.

Main Menu

Link Yönlendirme Sorunu

Started by Evo™, May 16, 2008, 03:54:09 AM

Previous topic - Next topic

Evo™

Arkadaşlar sitemde site dışı linkler için bir yönlendirme sistemi kullanıyorum.
Bu sitede yayınlanmıştı out.php'mi neydi tam hatırlamıyorum ama sistem çok güzel işliyor ancak şöyle bir sorun var yönlendirme tüm sayfalar için yapılıyor.
Site Adresi: www.siteadresi.com olsun.
Site içerisinde bulunan bir dış linki
http://www.siteadresi.com/out.php?url=http://www.simplemachines.org olarak yönlendiriyor.
Aynı şekilde site içerisinde bilgi amaçlı forum kuralları için bir adres verdiğim de link olduğu için maalesef onun da yönlendirmesini yapıyor.
Şu şekilde ki
http://www.siteadresi.com/out.php?url=http://www.siteadresi.com/bolum/konulinki.html
ben aynı domain üzerindeki sitelerin yönlendirilmesini istemiyorum.
Dış linkler sadece out.php'yi kullansın diğerleri için normal bir şekilde link açılsın yönlendirme olmadan her linkte yönlendirmenin olması biraz sinir bozucu.
Kullandığım yönlendirme kodu.

<?php
function urlmake($u) {
 
htmlspecialchars($u);
 if(!
preg_match("/[a-z]:\/\//si", $u)) $u = "http://$u";
 return
$u;
}
$u2=urlmake($_REQUEST["url"]);
?>

Subs.php'de bu şekilde yönlendiriyorum.
array(
'tag' => 'url',
'type' => 'unparsed_content',
'content' => $user_info['is_guest'] ? $txt['no_view_links'] . "\n" . '' . $txt['no_view_view'] . '&nbsp;<a href="' . $scripturl . '?action=register">' . $txt['no_view_register'] . '</a>&nbsp;' . $txt['no_view_or'] . '&nbsp;<a href="' . $scripturl . '?action=login">' . $txt['no_view_login'] . '</a>' : '<a href="http://www.siteadresi.com/out.php?url=$1" target="_blank">$1</a>',
'validate' => create_function('&$tag, &$data, $disabled', '$data = strtr($data, array(\'<br />\' => \'\'));'),
),
array(
'tag' => 'url',
'type' => 'unparsed_equals',
'before' => $user_info['is_guest'] ? $txt['no_view_links'] . "\n" . '' . $txt['no_view_view'] . '&nbsp;<a href="' . $scripturl . '?action=register">' . $txt['no_view_register'] . '</a>&nbsp;' . $txt['no_view_or'] . '&nbsp;<a href="' . $scripturl . '?action=login">' . $txt['no_view_login'] . '</a><div style="visibility:hidden">' : '<a href="http://www.siteadresi.com/out.php?url=$1" target="_blank">',
'after' => $user_info['is_guest'] ?  '</div>' : '</a>',
'disallow_children' => array('email', 'ftp', 'url', 'iurl'),
'disabled_after' => $user_info['is_guest'] ?  '' : ' ($1)',
),

Dediğim gibi sadece site dışı linkleri yönlendirmek istiyorum aynı domainde bulunan siteleri yönlendirmesin ve ya şöyle olursa daha iyi olur php kodu içerisine site adresleri yazsam onlar haricinde tüm domainlerde yönlendirme yapsa. İkinci söylediğim olursa çok daha iyi olur. Kendi sitelerime link verirken yönlendirme çalışmasın diğer sitelerde yönlendirme çalışsın sadece yardımcı olan herkese teşekkürler.

Evo™

Bu konuda yardımcı olabilecek arkadaşlar var mı acaba ?  O:)

PureLove™

yönlenmesini istemediğiniz linkleri [iurl]link.com[/iurl] şeklinde yaparsanız sorun olmaz. ya da [iurl=http://link.com]açıklama[/iurl] sorun olmaz  ;)

ixlam.net
- -

Herkesi İnsan Hakları Konusunda Düşünmeye Çağırıyoruz...
Hayat, İclal Aydın ile güzeldir.
www.iclalaydinfan.com

Evo™

Quote from: ixlam on May 21, 2008, 07:39:11 AM
yönlenmesini istemediğiniz linkleri [iurl]link.com[/iurl] şeklinde yaparsanız sorun olmaz. ya da [iurl=http://link.com]açıklama[/iurl] sorun olmaz  ;)

ixlam.net
Benim istediğimin bu dediğiniz ile hiç bir alakası yok ki
<a href="http://www.siteadresi.com/out.php?url=$1" target="_blank">
bu kod sayesinde tüm linkler yapmış olduğum yönlendirme sayfası üzerinden açılıyor bbc kodlar ile alakası yok yani benim istediğim kendi belirlediğim bir kaç siteye sitem üzerinden erişim yapmak istersem o sitelerde bu yönlendirme sayfası  açılmasın örneğin http://www.simplemachines.org ve www.google.com sitesine sitem üzerinden link verilmiş ise out.php devre dışı olacak diğerlerinde ise sistem devrede olacak çalışacak if else ile felan yapılamaz mı böyle birşey

PureLove™

hımm anladım tamam kusura bakmayın ama bu beni aşar
- -

Herkesi İnsan Hakları Konusunda Düşünmeye Çağırıyoruz...
Hayat, İclal Aydın ile güzeldir.
www.iclalaydinfan.com


ozanTi

yeni konu açmaktansa burda sorayım pattern ile bu sorun çözülür ama subs.php de mi yoksa out.php de mi pattern tanımlayıp otomatik yönlendireceğiz?

ozanTi


ozanTi

Quote from: Evo™ on May 16, 2008, 03:54:09 AM
Arkadaşlar sitemde site dışı linkler için bir yönlendirme sistemi kullanıyorum.
Bu sitede yayınlanmıştı out.php'mi neydi tam hatırlamıyorum ama sistem çok güzel işliyor ancak şöyle bir sorun var yönlendirme tüm sayfalar için yapılıyor.
Site Adresi: hxxp:www.siteadresi.com [nonactive] olsun.
Site içerisinde bulunan bir dış linki
hxxp:www.siteadresi.com/out.php?url=http://www.simplemachines.org [nonactive] olarak yönlendiriyor.
Aynı şekilde site içerisinde bilgi amaçlı forum kuralları için bir adres verdiğim de link olduğu için maalesef onun da yönlendirmesini yapıyor.
Şu şekilde ki
hxxp:www.siteadresi.com/out.php?url=http://www.siteadresi.com/bolum/konulinki.html [nonactive]
ben aynı domain üzerindeki sitelerin yönlendirilmesini istemiyorum.
Dış linkler sadece out.php'yi kullansın diğerleri için normal bir şekilde link açılsın yönlendirme olmadan her linkte yönlendirmenin olması biraz sinir bozucu.
Kullandığım yönlendirme kodu.

<?php
function urlmake($u) {
 
htmlspecialchars($u);
 if(!
preg_match("/[a-z]:\/\//si", $u)) $u = "http://$u";
 return
$u;
}
$u2=urlmake($_REQUEST["url"]);
?>

Subs.php'de bu şekilde yönlendiriyorum.
array(
'tag' => 'url',
'type' => 'unparsed_content',
'content' => $user_info['is_guest'] ? $txt['no_view_links'] . "\n" . '' . $txt['no_view_view'] . '&nbsp;<a href="' . $scripturl . '?action=register">' . $txt['no_view_register'] . '</a>&nbsp;' . $txt['no_view_or'] . '&nbsp;<a href="' . $scripturl . '?action=login">' . $txt['no_view_login'] . '</a>' : '<a href="http://www.siteadresi.com/out.php?url=$1" target="_blank">$1</a>',
'validate' => create_function('&$tag, &$data, $disabled', '$data = strtr($data, array(\'<br />\' => \'\'));'),
),
array(
'tag' => 'url',
'type' => 'unparsed_equals',
'before' => $user_info['is_guest'] ? $txt['no_view_links'] . "\n" . '' . $txt['no_view_view'] . '&nbsp;<a href="' . $scripturl . '?action=register">' . $txt['no_view_register'] . '</a>&nbsp;' . $txt['no_view_or'] . '&nbsp;<a href="' . $scripturl . '?action=login">' . $txt['no_view_login'] . '</a><div style="visibility:hidden">' : '<a href="http://www.siteadresi.com/out.php?url=$1" target="_blank">',
'after' => $user_info['is_guest'] ?  '</div>' : '</a>',
'disallow_children' => array('email', 'ftp', 'url', 'iurl'),
'disabled_after' => $user_info['is_guest'] ?  '' : ' ($1)',
),

Dediğim gibi sadece site dışı linkleri yönlendirmek istiyorum aynı domainde bulunan siteleri yönlendirmesin ve ya şöyle olursa daha iyi olur php kodu içerisine site adresleri yazsam onlar haricinde tüm domainlerde yönlendirme yapsa. İkinci söylediğim olursa çok daha iyi olur. Kendi sitelerime link verirken yönlendirme çalışmasın diğer sitelerde yönlendirme çalışsın sadece yardımcı olan herkese teşekkürler.
dediğinize ipuçları ve hileler bölümünde cevap verdim arkadaşım. peşpeşe biraz flood gibi oldu ama mesajınızı yeni gördüm kusuruma bakmayın. aynı şey bana da lazım olmuştu. az önce çözümünü buldum ve burada paylaştım. (not: 2008 konusu olduğunun farkındayım ama bana şimdi lazım oldu, hala bazı arkadaşlara lazım olabilir diye yazmak gereği duydum.)

Advertisement: