txt veya xml olarak yazdırıp listeleme konusunda fazlaca bilgim yok ama SQL ile yapmak istersen aşağıdakiler işini görecektir.
Arama Formu;
Alıntı
<form method="post" action="ara.php">
<input type="text" name="kelime">
<input type="submit" value="Arama Yap">
</form>
ara.php
(Arama yaptırdığın sayfanın herhangi bir yerine ekleyebilirsin.)
<?php
if($_POST){
$kelime = mysql_real_escape_string($_REQUEST['kelime']);
$sonuc = mysql_query("Select Count(kelime) From arananlar where kelime='$kelime'");
$sayi = mysql_result($sonuc,0);
if($sayi ==0){
mysql_query("Insert Into arananlar (zaman, kelime) Values ('".time()."', '$kelime')");
$zamanasimi = time()-24*60*60;
mysql_query("Delete From arananlar where zaman < ".$zamanasimi);
}
}
?>SQL Yapısı;
Alıntı
CREATE TABLE `arananlar` (
`zaman` varchar(50) NOT NULL,
`kelime` varchar(100) NOT NULL,
KEY `kelime` (`kelime`)
);
Verileri Listele;
(Verileri listelemek istediğin yere ekleyebilirsin.)
<?php
$sonuc = mysql_query("Select kelime From arananlar order by zaman DESC limit 5");
$a=1;
while($satir = mysql_fetch_array($sonuc)){
$kelime = $satir['kelime'];
echo $a."- <a title=\"".$kelime."\" href=\"arama.php?kelime=".$kelime."\">".$kelime."</a><br>";
$a++;
}
?>- Listelemede Limit 5 dediğimiz için ilk 5 veriyi listeler istersen sayıyı yükseltebilir veya azaltabilirsin.
-
$zamanasimi = time()-24*60*60; ile bir gününü tamamlamış veriyi sildiriyoruz. İstersen bu süreyi uzatabilir veya kısaltabilirsin. DB Şişmesin diye siliyoruz. İlk 5 i işine yaradığı için. Fakat istersen hiç sildirmeyip bütün kayıtları ayrı bir sayfada listeletebilirsin.
-
`kelime` varchar(100) NOT NULL, ile 100 karakterlik veri girişi yaptırıyoruz bunu 255 e kadar yükseltebilirsin veya 1'e kadar düşürebilirsin.
- SQL Yapısını varolan veritabanı içine arananlar şeklinde tablo ekleyerek yapabilirsin.