Mysql Like, belirttiğimiz tabloda ve sütunda arama yapmanıza olanak tanır. Eşleşen tüm içerikleri sıralar. Like, Mysql veritabanı kullanan sitelerde arama sonuçlarını gösterme konusunda yardımcı olur. Konu altına birde PDO ile Arama kodlaması ekleyeceğim.
SELECT * FROM post WHERE post_title LIKE "aranacakmetin" ....
post_title kısmında aranacakmetin kelimesiyle eşleşen tüm içerikleri listeler. Fakat arama böyle değildi demi :) direk eşleşmeyecek, içerenler çıkacaktı karşımıza. Evet efenim hemen ona geçelim o vakit. Şimdi basitce anlamanız için bir veritabanı görüntüsü oluşturalım;
+-------------+----------------+-----------------+-----------------+
| post_id | post_title | post_content | post_date |
+-------------+----------------+-----------------+-----------------+
| 0 | Merhaba Dünya | blabla | 2007-05-21 |
+-------------+----------------+-----------------+-----------------+
| 1 | Sardüya ekmek | blabla | 2007-05-21 |
+-------------+----------------+-----------------+-----------------+
| 2 | Eledim Herşeyi | blabla | 2007-05-21 |
+-------------+----------------+-----------------+-----------------+
Şimdide bu veritabanının post_title sütununda sonu "ya" içeren sonuçları elde etmek için sorgumuzu yazalım.
SELECT * FROM post WHERE post_title LIKE "%ya"....
Ya kelimesi herhangi bir yerde olsa da sonuçlarda listelensin istiyorsak eğer önüne koyduğumuz % işareti arkasına da koymamız gerekir.
SELECT * FROM post WHERE post_title LIKE "%ya%"....
Aynı şekil "ya" ile başlayan sonuçları listeletmek istersek eğer bu sefer sadece arka kısmına koymamız yeterli olacak.
SELECT * FROM post WHERE post_title LIKE "ya%"....
Mysql veritabanında arama sorgusu bu şekildedir. Biz bunu PDO ile birleştirip daha net anlamanızı sağlayalım.
//Veritabanı bağlantısını felan yapmışız ve yukardaki tablo örneğindeki gibi
// "ya" içerenleri bulacağız.
$sorgu="%ya%";
$sql=$db->prepare("SELECT * FROM post WHERE post_title LIKE ?");
$sql->execute(array($sorgu));
$sonusayisi=$sql->rowCount(); // 2 olarak karşımıza çıkar sonuç sayısı
// Eğer sonuç varsa döngüye sokalım ve başlığı yazdıralım ne dersin :)
if($sonucsayisi):
while($row=$sql->fetch(PDO::FETCH_OBJ)):
echo $row->post_title;
endwhile;
endif;
//Merhaba DünyaSarduya Salça olarak ekrana basacaktır.
Umarım kullanımı konusunda herşey kafanızda netleşmiştir.
PHP ile Sabit Veri oluşturup onu projenizin heryerinde kullanabilirsiniz.
Detaylı GörüntüleBahçedeki Ağaçları kestik, Fidanları Yeniledik için Temel Coşkun dediki, Kısmet olursa corona biterse bizleri ağırlarsın artık, birde eğer üzüm dikmeyi düşünürsen çubuk ayarlar ve ulaştırırım imkanlar dahilinde.
Online Test Sınav Yazılımı için FURKAN ÇAM dediki, ne zaman satışta olacak?
Online Test Sınav Yazılımı için Yavuzhoxa dediki, Merhaba scriptinizi almak istiyorum
Online Test Sınav Yazılımı için Kazım USLU dediki, yakında yeniden satışa çıkacak hocam. İlginiz için teşekkürler.
Burada Yer Almak ister misin ? İletişim sayfasından bana ulaşabilirsin :)
PHP – Epin Cash ESN Satış Scripti için Ethem dediki, Merhaba, sıfırdan script yazdırılacak teklif alabilir miyim?