Php İle Bot Yapmak
-
hocam sana verdiğim bot zaten öyle yapıyor sendeki de öyle ancak sorun şu, bot yakaladığı ilk anahtarı basıyor ekrana
instr ile anahtarları yakalayabilirsin.. ve anahtarları direk basmak yerine yakaladı yakalamadı gibi ayırıp işlem bitince bulunan anahtarları random olarak cevap vermede kullanabilirsin. bizim botlarda ilk anahtarı yakaladıktan sonra döngüden çıkıp cevabı yapıştırıyor bu da çeşitliliği azaltıyor.
tabloya bağlanılır
anahtarlar listelenir
anahtar cümlede var mı yokmu tespit edilir
eğer varsa kenara ayrılır
tespit etmeye devam edilir
listeleme biter ve bağlantı koparılır
kenara ayrılan anahtarlar varsa random olarak ekrana basılır.
mantık bu.
bunuda nasıl yaparsın aklıma hemen şu geliyor.
set dagarcik=baglanti.Execute("select * from beyin")
Do While Not dagarcik.eofif instr(gelenmetin,dagarcik("anahtar"))>0 Then
anahtarlar=anahtarlar&"-"&dagarcik("id")
end if
dagarcik.movenext
Loop
dagarcik.close
Set dagarcik=Nothing
sana işlem bitince anahtarlar değişkeni içinde atıyorum 1-4-6-8 gibi uyuşan anahtarları vericek bunu splitle ayırıp randoma bağlarsın olay biter. -
konuyu ilk gördügümde pesibotu indirip kurcalamıstım. bisi dikkatimi cekti hocam. her cevap icin ayrı bi field eklemişsin. zumsuk hocam yaparken öyle değilde cevaplar diye ayrı bi tablo tanımla, soruların oldugu tabloyla cevapların oldugu tabloyu id ile ilişkilendir istediğin kadar cevap girersin vs. daha esnek olur. ayrıca sql sorgunda mesela; "select * from cevaplar where soruid="&soruid&" order by rand()" gibi basit bişi olur :) yapay zekaya yakın bişi yapmak icin cok saglam bi algoritma ve coook zengin bi database lazım aslında bunlar yıldırmasa üzerine düşülüp güzel bişi yapılabilir :)
-
konu php bottan asp bota dönmüş :))
-
@Fikret hocam benim öyle yapmamın sebebi kodlamış olduğum portalın sohbet odalarında bu botu kullanmam nedeniyleydi ordan çıkma bu bot. en fazla 5 cevap döngüsü giriliyorki yük yaratmasın bana.. aksi halde dediğin gayet mantıklı ve güzel olması gereken senin dediğin gibi.
ancak bu tür yapay zekalarda anahtar belirle cümle gir olayı sağlıklı değil.. direk kelime, yüklem, zarf, tümleç, bağlaç vb dil bilgisi tablosu oluşturup o bilgilerle bota cümle kurma yeteneği öğretmek bin çeşit cümle ve cevap çıkmasına yardımcı olacaktır.. şuanki bot sadece eğlencelik çıtır çerez amaçlı yazılmış bi uygulama
-
FOXXLY bunu yazdı:
-----------------------------
konu php bottan asp bota dönmüş :))
-----------------------------bu da pesinin gücüdür föxcüm :d
-
pesi hea tamma - li birşeyler gördüm olayı çözemedim tamadır oldu :) saolasın
& fikret
Evetolabilir öyle deniyeyim.Şu rastgele çekmeyi ayarlar ayarlamaz deneyeyim :)
& foxxly
önce asp sonra php :D
-
pesimistzombie bunu yazdı:
-----------------------------FOXXLY bunu yazdı:
-----------------------------
konu php bottan asp bota dönmüş :))
-----------------------------bu da pesinin gücüdür föxcüm :d
-----------------------------pesünün gücü adına :d
yürü be olm :D biz asp ciler seninle gurur duyuyoruz :D
bu arada pesücüğümün de dediği gibi kelime öğretilse ve kendi seçerek cevap verse harbici bot olur. bu soru cevap gibi bişey.
-
FOXXLY bunu yazdı:
-----------------------------pesünün gücü adına :d
yürü be olm :D biz asp ciler seninle gurur duyuyoruz :D
bu arada pesücüğümün de dediği gibi kelime öğretilse ve kendi seçerek cevap verse harbici bot olur. bu soru cevap gibi bişey.
-----------------------------olacak olacakta bi şurda takıldım işte anahtarları listeletip birde girilen cümleyi kelime haline getirip aramak.Cümle içinde anahtardan 5 tane varsa rastgele birini seçmek
ama şey değil pesi sen mesel
mrb deyince sanada mrb, hoşgeldin gibi 5 cvp vermişsin.Benim dediğim selam merahaba naber dedik burada anahtara uygun 3 cümle var bunları rastgele kullanacak.
Burada biraz sıkıntı oldu sandığımdan daha karıştı arraylar falan.Pesi bi kod yazmış anlayamadım mq D:
-
zumsuk yukarda bahsettiğim anahtarları toplama olayını yap istediğin gibi olacak eski kodu karıştırma ordaki arraya aldıklarım filan boşuna yapılmış olaylar instr yeterli bu iş için
-
pesimistzombie bunu yazdı:
-----------------------------
zumsuk yukarda bahsettiğim anahtarları toplama olayını yap istediğin gibi olacak eski kodu karıştırma ordaki arraya aldıklarım filan boşuna yapılmış olaylar instr yeterli bu iş için
-----------------------------pesi :D kafamı karıştırdın hea
set cek = bag.Execute("select * from lag")
do while not cek.eof
anahtar=cek("anahtar")
karakter=Array(anahtar)
if instr(yazi,anahtar)>0 Then
kac=instr(yazi,anahtar)
var=True
response.write cek("cevap")+" "
response.write instr(yazi,anahtar)
end if
if var=True then exit do
cek.movenext
loophoca burada if var=True then exit do bunu çektiğim zaman döngü devam ediyor ne kadar uyan varsa listeleniyor.O halde doğru bir kod.Tek eksik anahtarlar dediğim kısım.
anahtarlar=anahtarlar&"-"&cek("id")
diyerek yaptım peki sonra anahtarlar kısmını mı randomize ettiricem ?