|
Yazan
|
Konu: Veri arama (Çözüldü) (Okunma Sayısı 773 defa)
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
Abc adlı veritabanım da XYZ tablom ve bu tabloda A1(ıd), A2,A3,A4, A5,A6 gibi sütunlar var Php yada asp ile MYQSL bağlanıp A2 deki verileri aratmak istiyorum daha iyi anlaşılması için A2 de veri arattırken, aranan kelime ile eşleşen tüm kelimelerin bu şekilde ekrana gelmesini istiyorum. A2 A3 A4 A5 A6 Kitabın Adı Yazar Adı Roman Yayın Evi Kısa tanıtım Bu konuda yardımlarınızı esirgemeyeceğiniz umudu ile saygılar
|
|
|
|
« Son Düzenleme: 04, 2008, 12:17:18 pm Gönderen: serdarX »
|
Logged
|
|
|
|
turker
türker
PHP Öğrencisi
Offline
Mesaj Sayısı: 114
aggressiveness
|
bkz: mysql fulltext
|
|
|
|
|
Logged
|
|
|
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
vallahi arkadaş iki gündür o yazıyı okuyup uygulamaya çalışıyorum ama ne yazık ki hiç bir sonuca varmadım. yinede teşekürler, belki biri bana kodları yazıp verir umut kesilmez
|
|
|
|
|
Logged
|
|
|
|
|
hyq1
|
O zaman daha basit ama daha yavaş olan aşağıdaki sorguyu kullanabilirsiniz. Ancak bu sorgu tablonuz büyük boyutlara ulaştığında sıkıntı çıkarabilir. Ayrıca biraz daha performans için A2 alanını tabloda index olarak tanımlayabilirsiniz. select * from XYZ where A2 like "%aranacak_kelime%";
|
|
|
|
|
Logged
|
Übkgkdd.
|
|
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
İlginiz için teşekürler. Sanırım derdimi tam anlatamadım.
yaptığım kodları verirsem sanırım daha anlaşılır
1. bir arama.php diye bir sayfa yaptım
<html> <head><title> Arama Yapma </title> </head><form action="aramasonuc.php" name="ara" method="get"> <p align="center">Aranacak : <input type="text" name="aranacak"> <input type="submit" name="ara" value="Ara"></p> </form> </html>
2. aramasonuc.php
<?php include("mysql_baglanti.php"); $aranacak= mysql_real_escape_string($_GET['aranacak']); $sec =$_GET['sec'];{ $sql= mysql_query("SELECT * FROM XYZ WHERE A2 like '%".$aranacak."%' or A3 like '%".$aranacak."%' or A4 like '%".$aranacak."%'"); } ?php>
3. baglanti.php kodları
<?php $baglan=mysql_connect("localhost", "KULANICIADI", "SIFRE"); mysql_select_db("VERITABANI", $baglan); ?>
bütün bunları yaptıktan sonra arama yaptırdım alınana sonuc hep boş sayfa. Nerde hata var bu konuda yardım ediniz lütfen
|
|
|
|
|
Logged
|
|
|
|
mukremin
Mükremin
PHP Öğrencisi
Offline
Mesaj Sayısı: 116
En büyük sermaye TECRÜBEDIR.
|
<?php include("mysql_baglanti.php"); //2. aramasonuc.php sayfasi formu post alarak gönder get olarak degil
$sql= mysql_query("SELECT * FROM XYZ WHERE A2 like '%$_POST[aranacak]%'"); while($row = mysql_fetch_array($sql)){ $sonuc = $row['id'];//burda ben id yazdim sen nereleri almak istersen oralari yaz echo $sonuc; } ?>
|
|
|
|
|
Logged
|
Bana hakkı soran oğul haber al aşık sazından, Göğsü peygamber ağacı kılıfı ALİ bezinden.
|
|
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
evet dediginizi yaptim birde bunu ekledim if($sec){ echo "$aranacak "; echo "aranan "; }else{ echo "Sonuc Bulunamadı"; } ?>
aranan kelıme veritabanında oldugu halde Sonuc Bulunamadı diyor nerde hata yapıyorum
|
|
|
|
|
Logged
|
|
|
|
mukremin
Mükremin
PHP Öğrencisi
Offline
Mesaj Sayısı: 116
En büyük sermaye TECRÜBEDIR.
|
arama.php <html> <head><title> Arama Yapma </title> </head> <form action="aramasonuc.php" method="post"> <p align="center">Aranacak : <input type="text" name="aranacak"> <input type="submit" value="Ara"></p> </form> </html> <?php //baglanti.php $baglan=mysql_connect("localhost", "KULANICIADI", "SIFRE"); mysql_select_db("VERITABANI", $baglan); ?>
<?php include("baglanti.php"); //aramasonuc.php
$sor = mysql_query("SELECT id FROM XYZ WHERE A2 like '%$_POST[aranacak]%'"); while($row = mysql_fetch_array($sor)){
$id = $row['id']; echo $id."<br>"; }//bu kot sana A2 ye benzer kayitlari veri tabanindan getirecek kotlari denedim bende oluyor hadi kolay gelsin ?>
|
|
|
|
|
Logged
|
Bana hakkı soran oğul haber al aşık sazından, Göğsü peygamber ağacı kılıfı ALİ bezinden.
|
|
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
Teşekürler mukremin arkadaş, sonunda sayenizde biraz yaklaştık aradığımıza ama A2(ROMANIN ADI) deki degeri bulurken neden like kullandıgım halde A3(ZAYARIN ADI) ıle A4(YAYINEVI )ilişkilenmiyor bunu anlamadım acaba asp de response vardı php de onun gibi miydi
|
|
|
|
|
Logged
|
|
|
|
mukremin
Mükremin
PHP Öğrencisi
Offline
Mesaj Sayısı: 116
En büyük sermaye TECRÜBEDIR.
|
$sor = mysql_query("SELECT id FROM XYZ WHERE A2 like '%$_POST[aranacak]%'");
bak bu sorguda XYZ isimli tablodan A2 sütununda arama yapiyor ve id degerlerini aliyor eger senin A2 sütununda
farzedelim istanbul, izmir, icel, ankara, bolu degerleri mevcutsa ve formdan 'i' diye bir deger gönderdigin zaman sana bu sorgunun getirecegi deger istanbul, izmir, icel dir ankara ve bolu'yu getirmez umarim yardimci olabilmisimdir hadi kolay gelsin...
|
|
|
|
|
Logged
|
Bana hakkı soran oğul haber al aşık sazından, Göğsü peygamber ağacı kılıfı ALİ bezinden.
|
|
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
bu sorgu ($sor = mysql_query("SELECT id FROM XYZ WHERE A2 like '%$_POST[aranacak]%'")  dediginiz gibi A2 sutununda ki degerleri bulup ve ekrana getiriyor burda sorun yok ama benim yapmak istediğim şu sütunlarım A1 de (id), A2 de (Kar) A3 (Orhan Pamuk) A4 (Iletişim) gibi degerlere sahip ben Kar ı aratırken browsere Kar Orhan Pamuk Iletısım gelmeli şimdi sadece kar geliyor sorun
|
|
|
|
|
Logged
|
|
|
|
mukremin
Mükremin
PHP Öğrencisi
Offline
Mesaj Sayısı: 116
En büyük sermaye TECRÜBEDIR.
|
bana tablo yapini aciklarmisin sana daha iyi yardimci olayim
|
|
|
|
|
Logged
|
Bana hakkı soran oğul haber al aşık sazından, Göğsü peygamber ağacı kılıfı ALİ bezinden.
|
|
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
Tablom şöyle (siteyi joomla ile kuracagim) id int(11) a1 varchar(50)............................................daha cok burdaki degerler arama icin kıstas alınacak a2 varchar(50) a3 varchar(50) a4 longtext a5 varchar(50) şimdi ben a1 deki bır değeri arama formunda aratıp bulurken ekrana şu şekilde gelsin istiyorum a1=a2-->a3-->a4-->a5
|
|
|
|
« Son Düzenleme: 28, 2008, 03:59:44 pm Gönderen: serdarX »
|
Logged
|
|
|
|
mukremin
Mükremin
PHP Öğrencisi
Offline
Mesaj Sayısı: 116
En büyük sermaye TECRÜBEDIR.
|
$sor = mysql_query("SELECT id FROM XYZ WHERE A2 like '%$_POST[aranacak]%'"); Bu sorguda sadece A2 deki verilerde arama yapiyor. Anladigim kadariyla sen tablonun her sütununda arama yaptrmak istiyorsun demi?
o zaman sorguyu biraz daha gelistirelim, $sor = mysql_query("SELECT id FROM XYZ WHERE A1 like '%$_POST[aranacak]%' OR A2 like '%$_POST[aranacak]%' OR A3 like '%$_POST[aranacak]%' OR A4 like '%$_POST[aranacak]%' OR A5 like '%$_POST[aranacak]%'");
Bu sorguda sana A1, A2, A3, A4, A5 sütunlarinda arama yapip sonuclari sana getirir.
Umarim yardimci olmusumdur, Iyi calismalar.
|
|
|
|
|
Logged
|
Bana hakkı soran oğul haber al aşık sazından, Göğsü peygamber ağacı kılıfı ALİ bezinden.
|
|
|
serdarX
Yeni Kullanıcılar
Offline
Mesaj Sayısı: 17
|
Galiba ben derdimi anlatamıyorum hocam, zaten sayenizde arama , sorgu hal olunmuştu, sorun bir satırda ki veriyi arayıp o satırda bulunan tüm sütunlarda ki veriyi ekrana getirmek daha iyi yardım edebilmeniz için deneme amaçlı bir site yaptım bakarsanız sevinirim http://sitehanem.si.funpic.de/ deneme amaçlı olduğu için şifreleri size verebilirim Sanırım herşey burada ama ben cözemedim yani sütunlar nasıl ekleniyor anlayamadım $id = $row['id']; echo $id." ";
|
|
|
|
« Son Düzenleme: 29, 2008, 02:24:25 pm Gönderen: serdarX »
|
Logged
|
|
|
|
|
 |