• 04-08-2008, 14:57:59
    #1
    arkadaşlar download sitem var programa tıklayınca programın ismiyle açılıyor, ama başka sürümünü eskisini silmeden edleyemiyorum ben program adının hemen yanına inndir.com daki gibi id numarasını eklemek sitiyorum bu şekilde programlar çakışmayacak

    sorgulamam şu
    id mysql de id diye kayıtlı
    <?
    $q=mysql_query("Select * from program order by tarih desc limit 0,10");
    while ($r=mysql_fetch_array($q)) {
    $r1=mysql_fetch_array(mysql_query("Select * from kategori where id='$r[kategori]'"));
    $r2=mysql_fetch_array(mysql_query("Select * from altkat where id='$r[altkat]'"));
    ?>

    ne yapmam lazım
  • 04-08-2008, 16:50:14
    #2
    Üyeliği durduruldu
    Açıkcası derdini anlatamamışsın...
    Ayıca verdiğin sorgularda probleminle alakalı değil.
    ben anladığım kadarı ile yardımcı olmaya çalışacağıım.

    Şimdi senin X sitende (siten.com) URL'ler siten.com/indir.php?adi=DoğuWeb WEB Analiz Programı diye gidiyor. yani Filrtelemeler Programın Adına Göre Yapılıyor. (Tabii .htaccess kullanıyormusun permalinkler için onu belirtmemişsin o yüzden standart anlatacam)

    Örnek verdiğim gibi yapılıyorsa URL'ler, Doğal olarak sen bi önceki sürümdeki dosyayı eklerken adını DoğuWeb WEB Analiz Programı diye belirtirsen tabiiki veriler karışacak. (Aslında karışmıyacak sen sorguyu yaparken order by'ları neye gore vermişsen ilk o veriyi gosterecek)

    1.
    Şimdi sorunun bu ise, yapman gereken tek şey sorgunu "adı" ile değilde "id" ile yapman.
    URL : siten.com/indir.php?id=1234
    indir.php sorgusu : $sorgu=mysql_query("Select * from program where id='".$_GET['id']."'"); (güvenlik önlemleri yani filtrelemeleri es geçiyorum).

    2.
    Sen hem adı hemde id ile çekmem lazım diyorsan..
    URL : siten.com/indir.php?adi=DoğuWeb WEB Analiz Programı&id=1234
    indir.php sorgusu : $sorgu=mysql_query("Select * from program where adi='".$_GET['adi']."' and id='".$_GET['id']."'"); (programların isim alanı "adi" varsaydım).

    3.
    Eğer bu işlemleri .htaccess ile SEO-SEF amaçı yapıyorsan ise bunu belirt ona göre başka bir yol izlemn lazım (hiçbir değişiklik yapmadan sadece adı ile çekersen adının yanına rastgele bir numara verecez tabbiki sitendeki sorguların işleyişine göre bu)
    URL : siten.com/DoguWeb_WEB_Analiz_Programi-5458.html


    Kolay Gelsin.
  • 04-08-2008, 16:58:26
    #3
    3.
    Eğer bu işlemleri .htaccess ile SEO-SEF amaçı yapıyorsan ise bunu belirt ona göre başka bir yol izlemn lazım (hiçbir değişiklik yapmadan sadece adı ile çekersen adının yanına rastgele bir numara verecez tabbiki sitendeki sorguların işleyişine göre bu)
    URL : siten.com/DoguWeb_WEB_Analiz_Programi-5458.html

    bu tam istediğimin cevabı olmuş. htacces var artı seoda var istediğim 3 numarada yazdığınız
  • 04-08-2008, 17:06:33
    #4
    Üyeliği durduruldu
    Pekala...
    Sen URL için seo uygulaması yaparken Nasıl bir yol izliyorsun onu öğrenmem lazım ilk önce.

    Mesela bazıları veritabanı kayıt yaparken str_replace ile ayrıca bir mysql tablosundaki satıra sadece tr karakterleri temizlenmiş bir veri kaydedip veriyi ona göre çekerken bazıları ise bunu set_replace yaparken sayfa üzerinden yapıp sonrada gelen veriyi str_replace yapıp o şelikde sorgular.

    Sen bana ilgili kodları gonderebilirsen yada sitenin Adresini. ben bi kontrol edeyim.
  • 04-08-2008, 17:17:06
    #5
    seom altaki gibi

    Options +FollowSymlinks
    RewriteEngine On
    
    
    RewriteRule ^$                  index.php                                    [L]
    RewriteRule ^/index.php$        index.php                                    [L]
    RewriteRule ^/$                 index.php                                    [L]
    RewriteRule ^index.html$        index.php                                       [L]
    RewriteRule ^Haberler.html$        haberler.php                                       [L]
    RewriteRule ^Iletisim.html$        iletisim.php                                       [L]
    
    RewriteRule kategori/(.*)/(.*)-([0-9]+).html$                    kat.php?tur=altkat&kat=$2&page=$3             [L]
    RewriteRule kategori/(.*)/(.*).html$                    kat.php?tur=altkat&kat=$2&page=1             [L]
    RewriteRule kategori/(.*)-([0-9]+).html$                    kat.php?tur=kat&kat=$1&page=$2             [L]
    RewriteRule kategori/(.*).html$                    kat.php?tur=kat&kat=$1&page=1             [L]
    
    
    RewriteRule En_Yeniler-([0-9]+).html$                    en.php?tur=En_Yeni&turx=tarih&page=$1&link=En_Yeniler             [L]
    RewriteRule En_Iyiler-([0-9]+).html$                    en.php?tur=En_İyi&turx=hit&page=$1&link=En_Iyiler             [L]
    RewriteRule En_Yeniler.html$                    en.php?tur=En_Yeni&turx=tarih&page=1&link=En_Yeniler             [L]
    RewriteRule En_Iyiler.html$                    en.php?tur=En_İyi&turx=hit&page=1&link=En_Iyiler             [L]
    RewriteRule sonaranan-([0-9]+).html$                    sonaranan.php?tur=sonaranan&turx=hit&page=$1&link=sonaranan             [L]
    RewriteRule sonaranan.html$                    sonaranan.php?tur=sonaranan&turx=tarih&page=1&link=sonaranan             [L]
    RewriteRule sonaranan.html$                    sonaranan.php?tur=sonaranan&turx=hit&page=1&link=sonaranan             [L]
    RewriteRule encokaranan-([0-9]+).html$                    encokaranan.php?tur=encokaranan&turx=hit&page=$1&link=encokaranan        [L]
    RewriteRule encokaranan.html$          encokaranan.php?tur=encokaranan&turx=tarih&page=1&link=encokaranan             [L]
    RewriteRule encokaranan.html$                    encokaranan.php?tur=encokaranan&turx=hit&page=1&link=encokaranan         [L]
    RewriteRule guncellenen-([0-9]+).html$                    guncellenen.php?tur=guncellenen&turx=hit&page=$1&link=guncellenen        [L]
    RewriteRule guncellenen.html$          guncellenen.php?tur=guncellenen&turx=tarih&page=1&link=guncellenen           [L]
    RewriteRule guncellenen.html$                    guncellenen.php?tur=guncellenen&turx=hit&page=1&link=guncellenen         [L]
    
    
    
    RewriteRule Turkce_Arsiv-([0-9]+).html$                    dilarsiv.php?tur=Türkçe&page=$1&link=Turkce_Arsiv             [L]
    RewriteRule Yabanci_Arsiv-([0-9]+).html$                    dilarsiv.php?tur=İngilizce&page=$1&link=Yabanci_Arsiv             [L]
    RewriteRule Turkce_Arsiv.html$                    dilarsiv.php?tur=Türkçe&page=1&link=Turkce_Arsiv             [L]
    RewriteRule Yabanci_Arsiv.html$                    dilarsiv.php?tur=İngilizce&page=1&link=Yabanci_Arsiv             [L]
    
    RewriteRule Haber/(.*).html$                    haberdetay.php?id=$1             [L]
    
    RewriteRule Program/(.*).html$                    detay.php?id=$1             [L]
    
    RewriteRule download/(.*).html$                    indir.php?id=$1             [L]
    
    RewriteRule kirik-link/(.*).html$                    kiriklink.php?id=$1             [L]
  • 04-08-2008, 17:34:11
    #6
    Üyeliği durduruldu
    Ok.

    Linkleri belirlerken,
    site.com/Program/<?php echo $programlar['adi'] ?>-<?php echo $programlar['id'] ?>.html (değişkenlerini bilmediğim için $programlar varsaydım)

    .htaccess Dosyasına,
    RewriteRule Program/(.*)-(.*).html$ detay.php?adi=$1&id=$2 [L,NC]

    detay.php Dosyasındaki Sorgu,
    $sorgu=mysql_query("Select * from program where adi='".$_GET['adi']."' and id='".$_GET['id']."'"); (sorgunu bilmediğim için $sorgu ve "adi" satırı varsaydım)


    Kolay Gelsin.
  • 04-08-2008, 17:43:39
    #7
    detay php de şu sorgu var
    $r=mysql_fetch_array(mysql_query("Select * from program where adi_s = '$id'"));

    bu yeterlimidir
  • 04-08-2008, 17:46:36
    #8
    Üyeliği durduruldu
    Tabiiki. Ama adi_s ile değil id ile yapacaksanız sorguyu.
    Ama ornek verdiğim "adi" sorgularını "adi_s" diye değiştirisiniz.(Belirtmem gereksiz ama yineden okuyan olursa bunu belki onun için faydalı olur)
  • 04-08-2008, 18:23:47
    #9
    ("Select * from program where adi_s='".$_GET['adi_s']."' and id='".$_GET['id']."'");

    sorgumu bu şekilde düzeltiyorum