nasıl php ile fragment alabilirim?

Başlatan ersoystars, 14 Şubat 2012 - 10:20:21

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

ersoystars

Arkadaşlar 10 yıldır web yazılımları üretiyorum. 5 senesini php ile geçirdim. ama dün geceden beri gözümü kırpmadan php.net'in altını üstüne getirdim. Php ile sayfanın url'sinde bulunan fragmenti almayı bir türlü yapamadım.

<?$_SERVER["SERVER_NAME"].$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]?> bu şekilde bütün url yazdırılabiliyor ama fragment alamıyorum.

istediğim tam olarak şu:

www.deneme.com/index.php#me

buradaki #'den sonraki değeri php ile bir değişkene çevirmek istiyorum. javascript ile yapmam gerektiğini söylemeyi düşünenlere de şimdiden söyleyeyim

<?php
$oku 
"<script> document.write (window.location.hash);</script>";
?>
bu şekilde çalışmıyor. eğer js'yi php değişken yapabilmenin bir yolu var ise o şekilde de yapabilirim bir mahsuru yok. şimdiden herkese teşekkür ederim.
Fuuis

cagriemer

PHP bilmiyorum ama surada[1] sizinkine benzer soruya verilmis bir yanit var. Acaba isinizi gorur mu?

[1] http://stackoverflow.com/a/7899067

ersoystars

oralara da baktım. sadece değişkene yazılan linkteki fragmenti alıyor. banim ise adres çubuğundaki linkin #'den sonraki kısımı alabilmem lazım
Fuuis

fatihuzuner

#3
yapmanız gereken:

<?php
$link
=$_SERVER["SERVER_NAME"].$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
$dizi=explode('#',$link);
if(isset(
$dizi[1]))
{
//# işareti var.
echo $dizi[1];

//javascript ekleme
?>


<script type="text/javascript">alert('<?php echo $dizi[1]; ?>');</script>
<?php
}
?>



bu kodu yazdığınızda ve link www.site.com/index.php#fatih ise çıktısı fatih olacaktır.Aynı şekilde uyarı penceresindede fatih yazacaktır.
yalnız isset kullanın.dizide 1 nolu eleman yoksa direk 1 nolu eleman bulunamadı,diziyi aştın diye hata alırsınız.