<?

//
// Site içi arama motoru gerekti bende bir fonksiyonla
// full text search sorgu tipini kullandım.
// sizinde işinize yarayabilir yada fikir verebilmesi açısından paylaşayım dedim.
// muratozturkant@gmail.com fikirlerinizi iletebilirsiniz.


ini_set('display_errors', 1);
$link = mysql_connect('localhost', 'user', 'pass');
mysql_select_db('db_adi');
if (!$link) {
die('Could not connect: ' . mysql_error());
}

//
// İster get ile ister post ile gelsin veriler sorguya girecektir.
//
@$q=addslashes(strip_tags($_POST['q']));
@$q=addslashes(strip_tags($_GET['q']));
$q=str_replace(" ","+",$q);

function arama($q,$table,$satir) {
$q=explode("+",$q);
$qsayisi=count($q);

$satir=explode("+",$satir);
$satirsayisi=count($satir);
$virgul=$satirsayisi - 1;

$sql="select * from ".$table." where match(";

//sql tablomuzdaki hangi satırları kullanacağımızı yazdık
//onları sql sorgumuza aktarıyoruz

if ($satirsayisi!='1') {
for ($a=0;$a<$virgul;$a++) {
$sql.="".$satir[$a]." ," ;
}

$sql.="".$satir[$a]."" ;


} else {
$sql.="".$satir[1]."" ;
}

$sql.=") against ('+ ";

// sorguya giren arama kelimelerini sayısına göre
//onları sql sorgumuza aktarıyoruz
// kelimelerin başına +,- gibi belirteçleri koymak isterseniz gerekli bölüme ekleyebilirsiniz.

for ($i=0;$i<$qsayisi;$i++) {
$sql.="".$q[$i]." ";
}

$sql.="' in boolean mode)";

$query=mysql_query($sql);
while ($sq=mysql_fetch_assoc($query)) {

echo $sq['id']."<br>";
echo "<b>".@$sq['kat']."</b><br>";
echo "<b>".@$sq['urunadi']."</b><br>";
echo substr(strip_tags($sq['aciklama']),0,150)."...<br>";
}

}
arama($q,"ekategori","kat+aciklama");

?>