Pretraživač ???

2

Pretraživač ???

offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Na to sam i mislio. Na primer da u url ima 20 prikazao bih rezultate od 21-40, samo kako to da izvedem. Postoji li funkcija koja prilikom slanja upita bazi i uzimanja podataka iz baze uzima i broj reda, koji ispunjava uslov. Ja sam gore koristio nešto slično, ali ono pokazuje samo ukupan broj redova koji ispunjavaju uslov.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23212
  • Gde živiš: Niš

postoji, ali ne mozes ovde da je koristis, jer ti prvo izvrsis punu pretragu za sve reci, pa onda u php-u formiras niz, a taj niz trebas da delis, od 1-19, od 20-39, itd.
ne mozes to da uradis u sql upitima koje pravis za svaku rec...



offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Dobro. Šta treba da radim?

Meni je palo na pamet da dodam još jednu kolonu u tabelu, koja će biti int auto_increment. Dakle, trebalo bi vršiti pretragu za svaku stranicu. Ako u linku next bude broj poslednjeg prikazanog reda iz tabele, na sledećoj stranici bi trebalo da se prilikom izvršavanja upita zanemaruju rezultati sve dok se ne dođe do te stranice i da se prikaže sledećih 20 koji su dolaze posle.

Koliko bi ovaj metod zauzeo od resursa na serveru? Ja mislim da je to manje nego da čuvam podatke o svim rezultatima u bazi, pa da uzimam 20 po redu.

Gore sam već pitao "Postoji li i jedan sajt na kojem bi se mogla naći ova skripta?". Ovo bi me rešilio svih muka, a i mogao bih da vidim način na koji se ovo rešava.

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23212
  • Gde živiš: Niš

i ja mislim da je bolje da uvek pravis upit, a da se zanemaruju prvih 20, ako neko klikne na drugu stranu

trazis hosting za tvoju skriptu?

offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Ne, ne treba mi hosting. Interesuje me imali gde skripta za pretraživač da je mogu download-ovati, pa da prema njoj napravim bazu i da odustanem od pisanja.

Već sam napravio skript za unos podatak u bazu, pa ga neće biti problem malo promeniti i prilaogoditi tojs skripti koju bi downloadovao.

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23212
  • Gde živiš: Niš

probaj da nadjes na google... "search php script" ili tako nesto

offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Našao sam program za pravljenje search engine, ali mi pravi probleme jer nemože da čita iz tabela u bazi. Program rai nešto kao compailer. Podese se određeni parametri i kliknese a build i gotovo. Napravio mi je par fajlova, ali kod pretrage mi daje sledeću poruku:

Read table "tabledata" failure!
Error 1146: Table 'searchdb.tabledata' doesn't exist

Očigledno da ne može da podesi bazu kako bi trebalo, jer serachdb postoji, ali on nemože da čita iz tabele. ako neko ima vemena i živaca, neka pogleda sledeći nekoliko fajlova i odgonetne kako da tu tabelu napravim ručno.

[Link mogu videti samo ulogovani korisnici]
____________________

Sad da se vratim na predhodni kôd. Peca je gore rekao da napravim niz, pa se meni vrti jedna ideja u glavi. Da li bi bilo dobro da napravim u bazi jednu kolonu int auto_increment. Pa da taj niz ima sledeći oblik temp[$i][$j], gde bi $i bila upravo broj te kolone, $j bi se za svaku reč koja se ponavlja povećavalo za jedan. Znači ako upit ima tri reči i ako se svaka pojavljuje $j bi trebalo da je 3. Zatim bi formirao još jedan niz istog tipa gde bi metodom ponovljenog maksimuma prema $j složio rezultate po veličini, odnosno prvo one koji sadrže sve reči. Druga promenjiva u tom nizu bi i dalje sadržavala broj reda iz tabele. To je ideja, sad je pitanje kako to mislim da bi trebalo da radi.

Pa, ako drugi niz recimo izgleda niz[$z][$k] gde je po $z sve složeno po redu i kreće se od 1 do broja pronađenih rezultata, a $k je broj reda u tabeli. Na prvoj strani sa rezultatima bi bila petlja koja bi vrtila prvih 20 i ispisala bi ih, na drugoj drugih 20 i tako dalje.

Nadam se da ste shvatili o čemu govorim. Da li bi ovo moglo ovako da se reši?

I sad me samo interesuje kako da napravim link next. Mogu da napravim dugme unutar form koje bi istoj stranici slalo upit koji je postavljen (od strane korisnik), a uz to bi slao i još jednu promenjivu koja bi pokazivala koji je redni broj u nizu podatak koji sam poslednji prikazao, pa da od njega nastavljam. Kako da umesto dugmeta napravim tekstualni link koji će funkcionisati unutar form isto kao i submit?

Dopuna: 01 Mar 2005 12:48

Moja greška. Neće se raditi o dvodimenzijonalnim nizovima, ali se ipak nadam da će te iz gore navedenog shvatiti ideju.

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23212
  • Gde živiš: Niš

da, dobra ti je ideja, moze tako...
a sto se tice slike... [Link mogu videti samo ulogovani korisnici]

offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Hvala ti. Mislio sam da stavim tekstualni link, ali je ipak bolje da stavim sliku. Valjda će to biti gotovo za nekoliko dana.

Dopuna: 01 Mar 2005 22:01

Peco imam još jedan problem:

for ($j=0; $j<$i; $j++) {   $query =  "select * from podaci where ". keywords." like '%".$keyword[j]."%'";   $result = mysql_query($query);   $num_results = mysql_num_rows($result);   // i sve ostalo, gde uzimas podatke }

Ovo je petlja koju si napravio, ali ona proverava za jednu reč celu bazu, zatim za drugu i tako redom. Dakle, ako se u jednom redu u bazi pojavljuje više reči iz upita on će se naći više puta u nizu koji formiram. Može li se ikako napraviti petlja koja će za jedan red iz baze proveravati sve reči, pa tek onda preći na sledeći. Ovim bi moga da jednostavno vidim koliko reči iz upita se pojavljuje u tom redu sa z++;

offline
  • Peca  Male
  • Glavni Administrator
  • Predrag Damnjanović
  • SysAdmin i programer
  • Pridružio: 17 Apr 2003
  • Poruke: 23212
  • Gde živiš: Niš

hmm... ne...

Ko je trenutno na forumu
 

Ukupno su 1535 korisnika na forumu :: 68 registrovanih, 5 sakrivenih i 1462 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 20624 - dana 04 Apr 2026 04:18

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 100jan, 357magnum, Andrija357, black venom, bukefal, C-Gun, chichabg, cifra, darkkran, Darko Jovanovic, delboy, Djota1, draganl, dushan, esx66, france93, Georgius, goran.vvv, goranvas, GveX, Halabit, ikan, ivan979, Jakonjveliki, Jaz, K-1A, K2, Kajzer Soze, Kaplar2, kreker, lord sir giga, luka1978, MarijaC84, Mi lao shu, miki kv, Milan A. Nikolic, mm1811, moldway, Mrav Obrad, nebkv, OKT, Orc, Panter, pein, peradetlić, Prečanin30, raptorsi, raster12, Resnica, S-G, samocitam, sasovsky, Semberija, SlaKoj, Smiljkovich, Srpska zauvjek, sslay, stalja, TRABAKULA, Tumansky, Vanderx, Velizar Laro, Vojkan Petrovic, Walkers, xAlex2, zajcev1, Zjmc, zmajbre