[ Príspevkov: 13 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 25.07.07
Prihlásený: 27.11.14
Príspevky: 217
Témy: 38 | 38
Bydlisko: Kálnica city

Robim vyhladavanie na stranku. Do $text sa mi nacita obsah stlpca z sql tabulky, kde sa mi vyskytuje hladane slovo . Hladane slova mam ulozene v poli $slova .

Potreboval by som, aby mi hladane slova vyfarbilo na cerveno a zobrazilo mi len tie vety v ktorych sa hladane slovo vyskytuje a pridalo pred/za vetu tri bodky ak sa za nou/pred nou este daka veta vyskytuje.

toto mozno pomoze..
Kód:
if (!empty($text)){
        $zaciatok="<font color=\"#FF0000\">";
        $koniec="</font>";
       
        foreach ( $slova as $slova2 ){
         
              $vzor[$i]=$slova2;
              $nahrada[$i]=$zaciatok.$slova2.$koniec;
         
              $text_zobraz =str_replace($vzor,$nahrada,$text);
        }
       
         echo "\n Text:<br>$text_zobraz<br><br>";
    }
}


ak by sa nasla daka dobra dusa bol by som rad


Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 29.12.05
Prihlásený: 19.10.14
Príspevky: 539
Témy: 62 | 62
Bydlisko: 127.0.0.1 (...

Prisaham bohu ze aj ja presne toto riesim a mam to hotove.
Je toho ale hodne a nechcelo by sa mi to prisposobovat tvojmu...ak ces hodim sem cely moj zdrojac a uprav si ho...to uz bude jednoduche ;)


_________________
"Kde končí hiphop, začína IQ."
Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 25.07.07
Prihlásený: 27.11.14
Príspevky: 217
Témy: 38 | 38
Bydlisko: Kálnica city
Napísal autor témyOffline : 02.02.2008 20:51 | Vypísanie viet s hladanými slovami z databázy

ok daj zdrojak, mne daco z toho funguje len hlavne o to skracovanie sami jedna..


Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 29.12.05
Prihlásený: 19.10.14
Príspevky: 539
Témy: 62 | 62
Bydlisko: 127.0.0.1 (...

Kód:
<?php
   $slova=explode(" ", $slovo);//rozdeli hladany vyraz po slovach cez medzery
   $spolu=count($slova); //spocita slova
   $prikaz="";
   for ($i=0; $i<$spolu; $i++){
       //vytvori prikaz pre vyhladavanie pre presny pocet slov
       $prikaz.="text like \"%".$slova[$i]."%\" || nadpis like \"%".$slova[$i]."%\"";
       if (($i+1)!=$spolu)$prikaz.=" || ";
   }
   $vysledok=mysql_query("select text, nadpis from clanky where ".$prikaz." "); //vybet z db
   if (mysql_num_rows($vysledok)=="0")echo "Hladanému výrazu nevyhovuje žiaden článok!"; //ziaden clanok nevyhovuje
   else{
   while ($zaznam=MySQL_Fetch_Array($vysledok, MYSQL_NUM)){//pre jednotlive vybery urobi vypis
       $zaznam[0]=str_replace("&nbsp;&nbsp;", " ", strip_tags(syntax($zaznam[0]))); //nahradi viac medzier jednou
         $pozicia="99999999999999";//definovanie maximalnej pozicie(cim vecsie cislo tym lepsie)
         for ($i=0; $i<$spolu; $i++){//zistenie ktore hladane slovo je v texte prve
            $strp=strpos($zaznam[0], $slova[$i]);
            if ($strp<$pozicia && $strp!==false)$pozicia=$strp;
         }

         if(substr($zaznam[0], $pozicia, 300)!==false)$zaznam[0]=substr($zaznam[0], $pozicia, 300);//u mna hlada aj v nadpise a ten zobrazuje cely, tak pokial sa nachadza v hladane slovo aj v texte zobrazi ho od toho slova a to presne 300 znakov(namiesto 300 znakov si mozes dat aj ine)
         else $zaznam[0]=substr($zaznam[0], 0, 300);//pokial slovo nie je v texte zobrazi prvych 300 znakov(namiesto 300 znakov si mozes dat aj ine)

         for ($i=0; $i<$spolu; $i++){
         //samotne nahradenie slova zvyraznenym slovom...pri verzii php 5 sa da pouzit aj str_ireplace, inak str_replace(lepise bude CSS ako <font>)
            $phpversion = substr(phpversion(), 0, 3);
            if($phpversion >= 5.0){
               $zaznam[1]=str_ireplace(htmlspecialchars($slova[$i]), "<span style=\"color:red;\">".strtoupper(htmlspecialchars($slova[$i]))."</span>", $zaznam[1]);
               $zaznam[0]=str_ireplace($slova[$i], "<span style=\"color:red;\>".strtoupper($slova[$i])."</span>", $zaznam[0]);
            }
            else{
               $zaznam[1]=str_replace(htmlspecialchars($slova[$i]), "<span style=\"color:red;\>".strtoupper(htmlspecialchars($slova[$i]))."</span>", $zaznam[1]);
               $zaznam[0]=str_replace($slova[$i], "<span style=\"color:red;\>".strtoupper($slova[$i])."</span>", $zaznam[0]);
            }
         }

         echo "<a href= \"index.php?clanok=1\" title=\"Zobraziť celý článok\" class=\"head\">".$zaznam[2]."</a><br />";//zobrazi nadpis
         echo "...".$zaznam[1]."...<br /><br />";//zobrazi text
         }
?>

okomentoval som kazdy krok, snad pomoze
keby cosi nebolo jasne sa este ozvi ;)


_________________
"Kde končí hiphop, začína IQ."
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 06.12.06
Prihlásený: 21.02.15
Príspevky: 183
Témy: 59 | 59

cau skusil som ten tvoj script ale stale mi pise : Fatal error: Call to undefined function syntax() in C:\wamp\www\new_crazy\files\hladaj.php on line 18
.. tento riadok akosi nechce strajkuje : $zaznam[0]=str_replace("&nbsp;&nbsp;", " ", strip_tags(syntax($zaznam[0]))); //nahradi viac medzier jednou


Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 26.07.06
Prihlásený: 20.03.16
Príspevky: 1383
Témy: 90 | 90
Bydlisko: Slovakia-Ko...

a dobre si si odriadkoval ze vies presne ktory?


_________________
CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých
Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 29.12.05
Prihlásený: 19.10.14
Príspevky: 539
Témy: 62 | 62
Bydlisko: 127.0.0.1 (...

Punker661 píše:
cau skusil som ten tvoj script ale stale mi pise : Fatal error: Call to undefined function syntax() in C:\wamp\www\new_crazy\files\hladaj.php on line 18
.. tento riadok akosi nechce strajkuje : $zaznam[0]=str_replace("&nbsp;&nbsp;", " ", strip_tags(syntax($zaznam[0]))); //nahradi viac medzier jednou


jaj samozrejme...funkcia syntax() je mnou definovana a prevadza bbcode tagy na klasicke html tagy...vyhod ju.
som pisal ze som sem hodil moj neupraveny, len treba prisposobit :P


_________________
"Kde končí hiphop, začína IQ."
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 06.12.06
Prihlásený: 21.02.15
Príspevky: 183
Témy: 59 | 59

aj som si myslel ze to je neaka tvoja funkcia len sa mi ju akosi nedari dat prec odtial :(


Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 29.12.05
Prihlásený: 19.10.14
Príspevky: 539
Témy: 62 | 62
Bydlisko: 127.0.0.1 (...

Kód:
$zaznam[0]=str_replace("&nbsp;&nbsp;", " ", strip_tags($zaznam[0]));


_________________
"Kde končí hiphop, začína IQ."
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.02.08
Prihlásený: 03.02.08
Príspevky: 1
Témy: 0 | 0

mne to ukazuje zase chybu na riadku 21 : $strp=strpos($zaznam[0], $slova[$j]);
uz to skusam asi hodinu a neviem nato prist .
toto mi vypisuje : Warning: strpos() [function.strpos]: Empty delimiter.


Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 29.12.05
Prihlásený: 19.10.14
Príspevky: 539
Témy: 62 | 62
Bydlisko: 127.0.0.1 (...

mas hore definovanu premennu $slovo? je to vlastne retazec ktory hladame, ktory rozdelime na slova...moze to byt bud $slovo=$_GET['search'];, alebo $slovo=$_POST['search'];...plus este kontrola ci v nich nieco je
Kód:
if(trim($_POST['search'])=="")echo "Nie je co hladat!";
else{
//samotny skript
}


som to tam nedaval lebo to uz si dosadte sami ako vam vyhovuje...tu su len nejake priklady


_________________
"Kde končí hiphop, začína IQ."
Offline

Užívateľ
Užívateľ
Vypísanie viet s hladanými slovami z databázy

Registrovaný: 25.07.07
Prihlásený: 27.11.14
Príspevky: 217
Témy: 38 | 38
Bydlisko: Kálnica city
Napísal autor témyOffline : 05.02.2008 15:47 | Vypísanie viet s hladanými slovami z databázy

diki idem mi to , len asi si to este trochu pomenim (ak budem vediet ako).. je to totiz nie prilis najlepsie ked hladane slovo zobrazi ako prve, ale diki velmi si mi pomohol


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 21.02.07
Prihlásený: 21.02.10
Príspevky: 3991
Témy: 96 | 96

však LIKE nie?
SELECT * FROM table WHERE Meno LIKE='pes'


 [ Príspevkov: 13 ] 


Vypísanie viet s hladanými slovami z databázy



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Vypisanie z databazy

v PHP, ASP

8

275

19.06.2009 11:55

jtomcik

V tomto fóre nie sú ďalšie neprečítané témy.

Delenie viet

v PHP, ASP

6

637

15.07.2008 16:18

vladooo

V tomto fóre nie sú ďalšie neprečítané témy.

Bindovanie viet na klávesy

v Bezpečnosť a firewally

1

136

07.12.2014 16:35

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Charakterizujte Adminov, Modov a userov niekolkymi slovami

[ Choď na stránku:Choď na stránku: 1 ... 9, 10, 11 ]

v Krčma

326

20851

25.08.2014 12:00

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Word 2007- Ako vypnúť červené čiarky pod chybnými slovami...

v Ostatné programy

1

317

06.05.2011 22:11

nBXXL

V tomto fóre nie sú ďalšie neprečítané témy.

Program na preklad madarskych viet a textov

v Ostatné programy

2

2168

21.06.2008 20:19

izzi

V tomto fóre nie sú ďalšie neprečítané témy.

Vypisanie

v PHP, ASP

4

243

16.08.2010 9:23

Pades

V tomto fóre nie sú ďalšie neprečítané témy.

Vypisanie korenoveho adresara

v PHP, ASP

11

358

29.11.2007 20:38

vl4kn0

V tomto fóre nie sú ďalšie neprečítané témy.

txt vyber-vybratie-vypisanie

v PHP, ASP

21

772

04.11.2008 20:33

dadmtb

V tomto fóre nie sú ďalšie neprečítané témy.

Vypísanie znakov v C

v Assembler, C, C++, Pascal, Java

4

261

18.04.2012 20:48

Fico

V tomto fóre nie sú ďalšie neprečítané témy.

phpBB3 vypisanie podpisu pri registraci

v Redakčné systémy

0

413

26.10.2009 19:28

php30

V tomto fóre nie sú ďalšie neprečítané témy.

[VYRIESENE] funkcia na vypísanie časti textu

v PHP, ASP

3

236

09.02.2009 15:13

Unlink

V tomto fóre nie sú ďalšie neprečítané témy.

C++ vypísanie string funkcie na konzolu

v Assembler, C, C++, Pascal, Java

18

244

15.11.2014 22:13

matt1024

V tomto fóre nie sú ďalšie neprečítané témy.

Mysql, vypisanie zaznamaov kde sa nachádza nieco

v Databázy

1

490

02.02.2009 20:07

djsulo

V tomto fóre nie sú ďalšie neprečítané témy.

Vypisanie dat mysql, ak nepoznam nazvy stlpcov

v PHP, ASP

1

381

03.03.2011 22:55

venom2

V tomto fóre nie sú ďalšie neprečítané témy.

Program na vypísanie max a min cifre

v Assembler, C, C++, Pascal, Java

2

145

18.12.2016 21:50

BX



© 2005 - 2017 PCforum, edited by JanoF