İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

idsiz isme göre çekme

pembekedi

0
İyinet Üyesi
Katılım
3 Şubat 2005
Mesajlar
1,607
Reaction score
1
Konum
Neverland
tablo
id 1,2,3
isim çağdaş sanatlar, ayışığı çimeni, şakşakçı ömer

şimdi ben bunları link olarak sayfaya koymak istiyorum. ama sayfanın adında rakam olmasını istemediğim için id ye göre çekmek istemiyorum. yani sayfam.php?isim=cagdas-sanatlar ya da sayfam.php?isim=ayisigi-cimeni gibi olsun istiyorum. ama tabi ki bunları link olarak yazarken türkçe karakterlerden ve bosluklardan arındırıyorum ki sayfam.php?isim=çağdaş%20sanatlar gibi şeyler olmasın arındırdığım için bu okumamazlık ediyo db den. yani where isim=$isim yaptığımda öyle bi isim yok ki? diye vermiyo isimleri replace ettiğim için.

nasıl yapılır bu acaba? rakam olsun istemiyorum linkte. olabiliyo mu böyle bişey?
 

ploop

0
İyinet Üyesi
Katılım
11 Ekim 2004
Mesajlar
6,964
Reaction score
0
Konum
karavan
pembekedi' Alıntı:
tablo
id 1,2,3
isim çağdaş sanatlar, ayışığı çimeni, şakşakçı ömer

şimdi ben bunları link olarak sayfaya koymak istiyorum. ama sayfanın adında rakam olmasını istemediğim için id ye göre çekmek istemiyorum. yani sayfam.php?isim=cagdas-sanatlar ya da sayfam.php?isim=ayisigi-cimeni gibi olsun istiyorum. ama tabi ki bunları link olarak yazarken türkçe karakterlerden ve bosluklardan arındırıyorum ki sayfam.php?isim=çağdaş%20sanatlar gibi şeyler olmasın arındırdığım için bu okumamazlık ediyo db den. yani where isim=$isim yaptığımda öyle bi isim yok ki? diye vermiyo isimleri replace ettiğim için.

nasıl yapılır bu acaba? rakam olsun istemiyorum linkte. olabiliyo mu böyle bişey?
id koymazsan bu sorunu aşamazsın. id'ye göre çekip ismi rewrite yapman gerekir kedicik :p
 

MoD

0
İyinet Üyesi
Katılım
8 Nisan 2005
Mesajlar
1,722
Reaction score
2
Konum
Bursa
str_replace ile olur.

sql sorgusundan sonra elde ettigimiz hedef sayfa $hedef oldugunu varsayarsak.

PHP:
$hedef=str_replace(' ','-',$hedef);
echo "<a href=\"sayfam.php?isim=".$hedef."\" target=\"new\">".$hedef."</a>";

sayfam.php'de
PHP:
$hedef=$_GET['hedef'];
$hedef=str_replace('-',' ',$hedef);
$sorgu=mysql_query("select sutun from tablo where hedef='$hedef'");

..gibi

Edit: sayfam.php?isim=ayisigi-cimeni ornek alinmistir.
2. Edit: Turkce karakterleri gormemistim. Buna cozum olarakta sql tablonuzda ayri bir sutun acip oraya turkce karakterleri gozardi ederek isimleri yazin. Ingilizce sitelerinizde ozel karakterleri str_replace ile temizlersiniz. - ornektir. digerlerini ekleyerek fonksiyon haline getirebilirsiniz.
 

ploop

0
İyinet Üyesi
Katılım
11 Ekim 2004
Mesajlar
6,964
Reaction score
0
Konum
karavan
pembekedi' Alıntı:
idye göre çekip rewrite ile idyi yokedebiliyo muyus?
o da mümkün değil bildiğim kadarıyla. mantıken öyle bir şey olması mümkün değil bana göre ama.
 

MoD

0
İyinet Üyesi
Katılım
8 Nisan 2005
Mesajlar
1,722
Reaction score
2
Konum
Bursa
2. Edit'i yazma sebebim oydu ploop. Ben sadece bosluk,nokta,virgul ..vs karakterlerden kurtulmak olarak anlamistim problemi. Ingilizce sitelerde problem yasanmaz. Ama Turkce devreye girdiginde 2. editte yazdigim gibi sql tablosunda acilacak ek bir sutun yeter. pembekedi sanirim sahis orumceklerinden korunmak istiyor. Bir noktaya kadarda engelleyecektir. Ama kesin cozum degil. Almak isteyen her zaman aliyor.
 

ploop

0
İyinet Üyesi
Katılım
11 Ekim 2004
Mesajlar
6,964
Reaction score
0
Konum
karavan
evet 2. sütun olayını ben düşünmemiştim. direk siteyi id'li sisteme çevirdim oldu bitti :D
 

pembekedi

0
İyinet Üyesi
Katılım
3 Şubat 2005
Mesajlar
1,607
Reaction score
1
Konum
Neverland
ben o ikinci editi görene kadar denedim burda tabi olmadı okumuyo delirdim. o sekilde bi çözüm düşündüm ben de mod en kötü ihtimalle öyle uğraşıcam. çünkü ikincide çektirirken öyle bi isim olmadığı için yok ki filan diyo.
 

MoD

0
İyinet Üyesi
Katılım
8 Nisan 2005
Mesajlar
1,722
Reaction score
2
Konum
Bursa
Fakat dedigim gibi amac sahis orumceklerinden korunmaksa care degil. linklerinize kendi olusturacaginiz bir sifre algoritmasi ile 3-4 haneli bir sifre eklemeniz etkili olacaktir.
 

ploop

0
İyinet Üyesi
Katılım
11 Ekim 2004
Mesajlar
6,964
Reaction score
0
Konum
karavan
MoD' Alıntı:
Fakat dedigim gibi amac sahis orumceklerinden korunmaksa care degil. linklerinize kendi olusturacaginiz bir sifre algoritmasi ile 3-4 haneli bir sifre eklemeniz etkili olacaktir.
bu konuyu biraz daha açar mısın?
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
Türkçe karakterleri kendi belirlediğin kod yapabilirsin misal;
PHP:
<?
function degistir($yazi) {
$yazi=ereg_replace("c7","ç",$yazi);
$yazi=ereg_replace("c6","Ç",$yazi);
$yazi=ereg_replace("s7","ş",$yazi);
$yazi=ereg_replace("s6","Ş",$yazi);
$yazi=ereg_replace("o7","ö",$yazi);
$yazi=ereg_replace("o6","Ö",$yazi);
$yazi=ereg_replace("g7","ğ",$yazi);
$yazi=ereg_replace("g6","Ğ",$yazi);
$yazi=ereg_replace("i7","ı",$yazi);
$yazi=ereg_replace("i6","İ",$yazi);
return $yazi;
}
$yaz="c6etin ag7bi nai7lsi7n";
$link=ereg_replace(" ","-",$yaz);
$metin=degistir($yaz);
echo "<a href='index.php?git=$link'>$metin</a>";
?>
 

MoD

0
İyinet Üyesi
Katılım
8 Nisan 2005
Mesajlar
1,722
Reaction score
2
Konum
Bursa
Tabi ki, Adres:
http://www.sifrelisayfam.tr/ploopun_adsense_seruvenleri-11756-f00.html

rewrite icin olusturulan adresimizde 1-2-3.html mantigi.
1- link basligi
2- link id
3- algoritmamiz.

Programlama konusunda cok uzman olmayi bile gerektirmiyor. Algoritma olusturmadan da calisacak bir halini yapalim.

Link verirken;

PHP:
// SQL sorgusunu yaptigimizi dusunelim. Elimizdeki veriler, id-baslik
$sifrem=md5($id);
$sifrem=substr($sifrem, 0, 3);
$baslik2=duzelt($baslik);
// duzelt isimli bir fonksiyonu str_replace ile yazabilirsiniz. 
//Turkce karakterler ve ozel karakterleri ayiklamak icin.
echo "<a href=\".$baslik2."-".$id."-".$sifrem.".html\">".$baslik."</a>";
Bunu karsilayan sayfada ise yani linkle tiklandiginda acilacak php dosyamizda,
PHP:
$id=$_GET['id'];
$sifre=$_GET['sifrem'];
$md5=md5($id);
$md5=substr($md5, 0, 3);
if ($md5!=$sifre) {
// JS yada header fonksiyonu ile ana sayfaya atabilirsiniz
// Yada hata mesaji verdirebilirsiniz
} else {
// Sifre dogrulandiysa icerigi gosterirsiniz.
}
 

Caesar

0
İyinet Üyesi
Katılım
5 Haziran 2006
Mesajlar
1,894
Reaction score
7
onada gerek yok ben direk örnek olsun istedim direk array içine tüm değişkenleri atayıp tek str fonksiyonuyla işi halletmek en hızlısıdır ben sadece mantığını açıklamak için hızlı bir şekilde yazdım.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst