Türkiye'nin En Eski Webmaster Forumu İyinet'e Hoşgeldiniz!

mod_rewrite (üst düzey bi soru olabilir)

sempaty

1
Onaylı Üye
Üye
Katılım
25 Şubat 2005
Mesajlar
3,824
Açılan Konu
87
Tepki puanı
20
Konum
hawaii. ama sanal tur.
bu soru biraz üst düzey olarak tanımlanabilir. yabancı birçok forumu gezdim aradım taradım ama bulamadım.

şu ana kadar en iyi yapabildiğim şey şu oldu;

haberler.com/haber8.htm -> haberler.com/haber.php?id=8 şeklinde

yani mambodaki gibi, örneğin haberler.com/haber.php?id=8 olan adresi mod_rewrite ile, (ama tek tek satır girmeden) haberler.com/secimler_yaklasiyor.htm gibi adresten gösterebilir miyiz?


şimdiden teşekkürler..
 
A

ASUSHOST.COM

Misafir
.htaccess dosyası ile yapılır linux(php) hostinglerde...
İyinet Forum'larında ".htaccess" şeklinde aratırsan istemediğin kadar cevap bulursun. Bu konu çok açıldı...
 
C

cappytoi

Misafir
forumda rewrite diye aratırsan karşına güzel sonuçlar çıkacaktır.
 

yoktur

0
Onaylı Üye
Üye
Katılım
28 Ekim 2004
Mesajlar
2,366
Açılan Konu
90
Tepki puanı
1
Konum
/etc/istanbul.c
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*)\.htm$ /haber.php?id=$1
 

ploop

0
Onaylı Üye
Üye
Katılım
11 Ekim 2004
Mesajlar
6,964
Açılan Konu
214
Tepki puanı
0
Konum
karavan
bence cevap verenler soruyu yanlış anlamış. (affınıza sığınarak böyle bir şey yazdım) ben forumda daha buna benzer bilgi görmedim. onun da dediği gibi yazılan tek şey (ben de dahil) "haberler.com/haber.php?id=8" şeklindeki adresi "haberler.com/haber8.htm" şeklinde göstermek oldu. arkadaşın sorduğu, adresi nasıl "haberler.com/secimler_yaklasiyor.htm" yapabileceğimiz. burada seçimler yaklaşıyor'u sayfa başlığı olarak ele alırsak ve buna göre cevap ararsak herkesin işine yarıyabilir.
not: konuyu asıl ben yanlış anladıysam ukalalık için özür dilerim.
 

graf von beelzebub

0
Onaylı Üye
Üye
Katılım
14 Mart 2005
Mesajlar
274
Açılan Konu
4
Tepki puanı
0
bunun icin bir yol var aslında; haber sistemini id'ye göre degilde haber baslıgına göre yapmak mesela.
yani haberlerin tutuldugu tabloda birde url_title diye bir field olur ve bu field'da, haber baslıgının (Seçimler Yaklaşıyor), URL'de kullanılabilecek şekilde olan hali tutulur (secimler_yaklasiyor), aslında ilk haldeki de url'de kullanılabilir ama tabiki böylesi daha iyi.
haberler.php'de ise haber, id'ye göre degilde, url_title'ına göre gösterilir..

Kod:
Options +FollowSymLinks

RewriteEngine on

RewriteBase /

RewriteRule ^(.*).html$ /haberler.php?haber=$1

gibi bir rewrite rule'da iş görür sanırım
 

sempaty

1
Onaylı Üye
Üye
Katılım
25 Şubat 2005
Mesajlar
3,824
Açılan Konu
87
Tepki puanı
20
Konum
hawaii. ama sanal tur.
teşekkürler ama Mesajımı sadece ploop okumuş sanırım. mesajı tam okumadan cevap yazmışsınız gibime geliyor..

graf von beelzebub, önerin güzel aslında ama bu biraz karışıklığa yol acabilir diye düşünüyorum.. ama deneyeceğim sağol.

herkese teşekkürler tekrar
 

ploop

0
Onaylı Üye
Üye
Katılım
11 Ekim 2004
Mesajlar
6,964
Açılan Konu
214
Tepki puanı
0
Konum
karavan
bu konuya cevap verebilen birisi olursa acayip makbule geçecek. belki de o yüzden cevap veren yok kim bilir..
 

sempaty

1
Onaylı Üye
Üye
Katılım
25 Şubat 2005
Mesajlar
3,824
Açılan Konu
87
Tepki puanı
20
Konum
hawaii. ama sanal tur.
ya bunu mamboda kullanıyorum ama bileşen yardımıyla.. htaccess dosyasında

Kod:
Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_URI} ^(/component/option,com) [NC,OR] RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
RewriteRule ^(content/|component/) index.php
kodları var..

yani bu htaccess yardımıyla php kodlama ile gerçekleştiriliyor
ama nasıl oluyor :)

bi türlü çözemedim.. inşallah çözüp herkesle paylaşırız
 

yoktur

0
Onaylı Üye
Üye
Katılım
28 Ekim 2004
Mesajlar
2,366
Açılan Konu
90
Tepki puanı
1
Konum
/etc/istanbul.c
o isteginiz aslında imkansız degil ama bence ilerisi için sorun teşkil eder.

önce
secimler_yaklasiyor.htm degişkenine ulaşılır
$_SERVER["SCRIPT_FILENAME"] ile olabilir.

çeşitli kodlarlar saf $arama="secimler yaklasiyor" degişkenine ulaşırsınız

mysql_query("SELECT * FROM haberler WHERE status='Y' and arama like '%$arama%'

yapılarak istediginiz sonuca ulaşırsınız ama ileride haberler veritabanı büyüdükçe sorun teşkil eder ve aynı haber başlığından birden fazla olursa sorunlara yol açar
 
Üst