Arkadaþlar,
Artýk AJAX kullanýmý oldukça arttý. Ancak, bu durum Arama Motorlarý
açýsýndan
sayfanýn indexlenmesinde olumsuz sonuç verdi.
Çünkü, JS ile yapýlan AJAX çaðrýlarý, Arama Motorlarý tarafýndan
algýlanamýyor.
Örneðin:
[a href="#" onclick="SayfaGoster(3); return false;"]Ürünlerimiz[/a]
Ayrýca, bu örnekte URL'de yazan http://www.mydomain.com ifadesi deðiþmiyor.
Böyle olunca sayfanýn kalýcý linki (permenant link) baþkalarýyla
paylaþýlamýyor.
Yani ziyaretçiler, "Abi, istediðin ürün þu sayfada : xxx " gibi bir
mesaj gönderilemiyor.
*Burada 3 adet sorun var:*
1.) Arama Motorlarýnda yer alamama
2.) Kalýcý link verememe
3.) Hedefi yeni pencerede/sekmede aç sað tuþ fonksiyonlarý çalýþmýyor.
*Aþaðýdaki basit çözüm ile buradaki sorunlarýn 2 tanesini gidermek mümkün:*
[a href="urunler.php" onclick="SayfaGoster(3); return
false;"]Ürünlerimiz[/a]
Bu kullanýmda, href'e deðer girildiði için;
1.) Arama motoru doðru indexleme yapabilir.
2.) Hedefi yeni pencerede/sekmede aç sað tuþ fonksiyonlarý çalýþýr.
Geriye sadece AJAX kullanýmýnda adres satýrýnýn deðiþtirilmesi konusu
kalýyor.
Geçmiþte FLASH kullanýlarak bunun yapýlabildiðini okumuþtum, ancak o
zaman ilgimi çekmemiþti.
Ajax ile sayfa URL'inin deðiþtirilmesi, sayfanýn yeniden yüklenmesine
(post-back) neden olur.
Bu da AJAX'ýn getirdiði avantajlarýn silinip gitmesi anlamýný taþýr.
FaceBook'da Fotograf Albumü bölümünü incelerken þunu gördüm:
Sonraki/Önceki fotoðraf düðmelerine basýldýðýnda URL'de :
*http://www.facebook.com/*photo.php?pid=300319&id=772293458&ref=nf*#pid=160222&id=686426247*
gibi "URL DEÐÝÞÝMÝ" olduðunu gözlemledim.
Ayný sayfa adresi þu þekilde yazýldýðýnda yine sayfa çalýþmaktadýr.
*http://www.facebook.com/*photo.php*#pid=160222&id=686426247*
Sanýrým AJAX çözümünde bu noktaya odaklanýrsam üçüncü ve son sorun da
çözülmüþ olur.
Bu çerçevede, URL'deki *#* karakteri sonrasýndaki *pid* ve *id* gibi
parametrelerin ayrýlarak PHP'de $_GET['id'] biçiminde kullanýlabilmesi
için bir çalýþma yapmak yeterli olacaktýr.
Sorunu ve çözümü bu þekilde tespit ettikten sonra sanýrým bu konuda
web'den örnek aramaya gerek olmayacaktýr.
Diðer taraftan, Apache'deki mod_rewrite ile AJAX çaðrýsý konusunun
ayrýca ele alýnmasý gerekir düþüncesindeyim.
Arkadaþlar, bu konudaki fikirlerinizi grup üyeleri ile paylaþmanýzý dilerim.
Selamlar,
Nuri AKMAN
Ustun ERGENOGLU yazmýþ:
> http://www.contentwithstyle.co.uk/Articles/38/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps
> aradýðýnýz bu olsa gerek.
>
> 26.02.2008 tarihinde serkan_at_yaramazca.com <serkan_at_yaramazca.com> yazmýþ:
>
>> # sayfa icinde achor olarak kullanilabilir ama burdaki sorun ajax ile
>> kullanimi. ajaxin bir dez avantaji da bavk tusunun ve si
>> kullanilanlara eklenin calismamasidir. ama bunun # ile sayfa icinde
>> cozuldugunu birkac sitede gordum. urlde # li sekilde cagrilinca ajax
>> tetikleniyordu ve o sayfa ulasilabiliyordu. ama yontemini tam olarak
>> bilmiyorum...
>>
>>
>> On 2/26/08, Deniz Dizman <deniz.dizman_at_gmail.com> wrote:
>> > self.location="#hede" dediginiz zaman, ayni sayfada kalirsiniz, ancak URL
>> > degismis olur.
>> > Ornegin www.hodo.com/index.php desiniz ve yukardaki kodu yazdiniz,o zaman
>> > www.hodo.com/index.php#hede olur ama ayni sayfada kalirsiniz reload da
>> > etmez.
>> > basindaki # isareti buradaki kilit nokta :)
>> >
>> >
>> >
>> > 2008/2/25 Anýl KARADAÐ <anil.karadag_at_gmail.com>:
>> >
>> > >
>> > > Ajax ile sunucuda islemler yapar sonucunu sayfa postback olmadan
>> > > yayinlariz. Url degisimi demek sayfanin yeniden yuklenmesi (ayný
>> > > sayfaysa) demektir. Ajax ile gittigin url arka planda kalir,
>> > > goruntulenmez.
>> > >
>> > > facebooknun bu degisimi ajaxla yaptigina emin misin? sayfayi hic
>> > > incelemedigimden bahsettigin seyi gormedim.
>> > >
>> > > Pzt, 2008-02-25 tarihinde 15:09 +0200 saatinde, Nuri Akman yazdý:
>> > > > Arkadaþlar,
>> > > >
>> > > > Haýrladýðým sayfada resimler üzerinde ileri / geri hareket butonlarýný
>> > > > kullanarak resim galerisi hazýrladým.
>> > > >
>> > > > Sayfa HIZLI çalýþsýn düþüncesiyle resim çaðýrmayý AJAX ile hallettim
>> > > >
>> > > > Tabi ben bunu ajax ile yaparken URL deðiþmiyor :(
>> > > >
>> > > > Halbuki, facebook'taki izlenimim bunun yapýlabildiði yönünde.
>> > > >
>> > > > Bu konuyu nasýl yapabilirim acaba?
>> > > >
>> > > > Selamlar,
>> > > > Nuri AKMAN
>> > > >
>> > > > _______________________________________________
>> > > > Linux-programlama mailing list
>> > > > Linux-programlama_at_liste.linux.org.tr
>> > > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>> > >
>> > > _______________________________________________
>> > > Linux-programlama mailing list
>> > > Linux-programlama_at_liste.linux.org.tr
>> > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>> > >
>> >
>> >
>> >
>> > --
>> > dendiz
>> > http://dendiz.blogspot.com
>> >
>> _______________________________________________
>> Linux-programlama mailing list
>> Linux-programlama_at_liste.linux.org.tr
>> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>>
>>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Tue 26 Feb 2008 - 10:49:59 EET