Şimdi benim yapmak istediğim şey id e göre çekmek istiyorum yalnız urlde id yi göstermemem gerekiyor bunu nasıl yapabilirim ?
Bir diğer soru ise siz hangisini tercih ederdiniz veri çekerken id - veri isimi
Hangisi ?
6
●682
- 17-02-2009, 20:55:15Üyeliği durdurulduÖncelikle, belki bunun gibi 500 konu açılmıştır, arama yapmanı tavsiye ederim.
örnek:
<?php mysql_connect("localhost", "root", ""); mysql_select_db("yazilar"); $yazi_sql = mysql_query("select * from yazi where id='{$_GET['yazi_no']}'"); echo mysql_result($yazi_sql, 0, 'yazi'); ?>Böyle bir kod ile, X tablosundan, id nosu X olan veriyi, GET ile gelen, örneğin: $_GET['yazi_no'] değişkenini sql içine where id='$_GET['yazi_no']' şeklinde ekleyerek, belirli bir veriyi alabiliyorsun.
örneğin, adres cubuguna sunu yazınca id nosu 3 olan veriyi ekrana alabiliyorsun.
www.kadriningoturduguyeregit.com/kadrinin_yazisi.php?yazi_no=3
urlde id gostermemek için, seo & htaccess kullanacaksın, veya veriyi:
www.kadriningoturduguyeregit.com/kadrinin_yazisi.php?y=phpde_degiskenler
şeklinde cekeceksin. bunun için kodun şu şekilde olacak.
<?php mysql_connect("localhost", "root", ""); mysql_select_db("yazilar"); $yazi_sql = mysql_query("select * from yazi where yazi_title = '{$_GET['y']}'"); echo mysql_result($yazi_sql, 0, 'yazi'); ?>Burada urlden gelen $_GET['y'] degiskeninin içerigi, cekmek istegin yazinin titlesi olmalıdır. - 17-02-2009, 20:59:17Bymst eğer gönderdiğiniz verinin gözükmesini istemiyorsanız bunu GET ile değilde POST ile yapmanız gerekiyor.
Bunun içinde hazırlamış olduğunuz form'un GET 'ini POST yazısı ile değiştirip. Gönderdiğiniz sayfadaki alınan değeride GET yerine POST ile değiştirdiğinizde işleminiz gerçekleşecektir.
Yani
<form action="gel.php" method="GET" >
<form action="gel.php" method="POST" >
Olarak değiştirin
2. sorunun cevabı ise sef url düşünmüyorsanız id ile eğer seo ve sef yapacaksınız bence veri ismi ile yapın derim - 17-02-2009, 21:23:45gönderdiğin formdaki karşılık gelen php sayfasında
Veriler Tablosu
No ve İsimden oluşsun
//goster.php için $result = @mysql_query("select no, isim from veriler"); while(list($no, $isim) = @mysql_fetch_row($result)){ $isim = stripslashes($isim); echo "<a href=goster2.php?no=$no >$no Numaradaki ismi göster</a><br />";//goster2.php için
$no = $_GET["no"];//gönderdiğin numaradaki veriyi alma $q=@mysql_query("select * veriler where no=$no"); while ($g=mysql_fetch_array($q)) { $isim=$g["isim"];//gönderdiğin noya karşılık gelen isim echo $isim;şeklinde çekebilirsin - 17-02-2009, 21:39:15Üyeliği durdurulduurl nin görülmemesi için post metodu ile formu göndermeniz gerekiyor. doğal olarak linkleriniz direk linkten ziyade javascript calistirmaya yönelik onclick inde javascript fonksiyonuı olan link yada button olması gerekiyor.
- 17-02-2009, 22:09:23id ye göre işlem yapmanızı öneririm. çünkü id unique dir.
url de id yi göstermemek için post metodunu kullanabilirsiniz. - 17-02-2009, 22:30:38Eğer form ile ilgiliyse bu sorun method="post" yapacaksın. Yok içeriği oku.php?id=1 değilde oku.php?id=makale_basligim yapmak istiyorsan devturkeli arkadaşın dediği gibi yapmalısın. İçeriğini eklersen veri tabanında title (Makale Başlığım) sütununun yanı sıra title_id sütununda da (makale_basligim) [Veriyi veritabanına eklerken Türkçe karakterleri ve boşlukları temizleyeceksin] bilgilerini tutacaksın ve unique olarak ayarlayacaksın ki aynı title_id ile veri girilmesin.