IT NEWS PC REVUE PC FORUM FreeBSDInternet time: @207
Obsah fóra
Pravidlá  •  Kontakt  •  Prihlásenie  •  Registrácia

Súťaž o LEGO® duplo®

Vyhrajte prekvapenie pre svoje detičky! LEGO duplo 2 krát deňne do konca mesiaca www.duplo.lego.com

Dala som si poradiť

O moje peniaze je postarané. A o vaše? www.partnersgroup.sk

TREND konferencia - Marketing

dá sa rásť, aj keď spotreba a rozpočty klesajú? Dozviete sa *12. júna 2012* www.etrend.sk

Vy evidujete jazdy ručne?

Šetrite svoj čas a náklady. Skúste demo služby Telemonitor zdarma movys.sk

Pridaj sa a vyhraj iPad

Tvoj názor sa ráta a oplatí! Zarobte si vyplnením ankety na internete www.marketagent.com

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

Zaslať odpoveď
AutorSpráva
Matho
Užívateľ
Užívateľ

Založený: 25.07.2007
Príspevky: 217
Bydlisko: Kálnica city

PríspevokZaslal: So 02.02.08 19:45Odpovedať s citátomNávrat hore

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
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
qacer
Užívateľ
Užívateľ

Založený: 29.12.2005
Príspevky: 540
Bydlisko: 127.0.0.1 (Pov. Bys.)

PríspevokZaslal: So 02.02.08 21:45Odpovedať s citátomNávrat hore

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."
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberTwitterZobraziť autorove WWW stránky
Matho
Užívateľ
Užívateľ

Založený: 25.07.2007
Príspevky: 217
Bydlisko: Kálnica city

PríspevokZaslal: So 02.02.08 21:51Odpovedať s citátomNávrat hore

ok daj zdrojak, mne daco z toho funguje len hlavne o to skracovanie sami jedna..
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
qacer
Užívateľ
Užívateľ

Založený: 29.12.2005
Príspevky: 540
Bydlisko: 127.0.0.1 (Pov. Bys.)

PríspevokZaslal: So 02.02.08 22:22Odpovedať s citátomNávrat hore

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."
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberTwitterZobraziť autorove WWW stránky
Punker661
Užívateľ
Užívateľ

Založený: 06.12.2006
Príspevky: 180

PríspevokZaslal: Ne 03.02.08 2:50Odpovedať s citátomNávrat hore

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
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
kmsa
Užívateľ
Užívateľ

Založený: 26.07.2006
Príspevky: 1383
Bydlisko: Slovakia-Košice

PríspevokZaslal: Ne 03.02.08 11:20Odpovedať s citátomNávrat hore

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
Zobraziť informácie o autoroviOdoslať súkromnú správuICQSkype
qacer
Užívateľ
Užívateľ

Založený: 29.12.2005
Príspevky: 540
Bydlisko: 127.0.0.1 (Pov. Bys.)

PríspevokZaslal: Ne 03.02.08 11:22Odpovedať s citátomNávrat hore

Punker661 napísal:
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

_________________
"Kde končí hiphop, začína IQ."
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberTwitterZobraziť autorove WWW stránky
Punker661
Užívateľ
Užívateľ

Založený: 06.12.2006
Príspevky: 180

PríspevokZaslal: Ne 03.02.08 11:35Odpovedať s citátomNávrat hore

aj som si myslel ze to je neaka tvoja funkcia len sa mi ju akosi nedari dat prec odtial
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
qacer
Užívateľ
Užívateľ

Založený: 29.12.2005
Príspevky: 540
Bydlisko: 127.0.0.1 (Pov. Bys.)

PríspevokZaslal: Ne 03.02.08 11:38Odpovedať s citátomNávrat hore

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

_________________
"Kde končí hiphop, začína IQ."
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberTwitterZobraziť autorove WWW stránky
JohnyNM
Užívateľ
Užívateľ

Založený: 03.02.2008
Príspevky: 1

PríspevokZaslal: Ne 03.02.08 12:07Odpovedať s citátomNávrat hore

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.
Zobraziť informácie o autoroviOdoslať súkromnú správu
qacer
Užívateľ
Užívateľ

Založený: 29.12.2005
Príspevky: 540
Bydlisko: 127.0.0.1 (Pov. Bys.)

PríspevokZaslal: Ne 03.02.08 12:13Odpovedať s citátomNávrat hore

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."
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberTwitterZobraziť autorove WWW stránky
Matho
Užívateľ
Užívateľ

Založený: 25.07.2007
Príspevky: 217
Bydlisko: Kálnica city

PríspevokZaslal: Ut 05.02.08 16:47Odpovedať s citátomNávrat hore

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
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
Tominator
Zablokovaný užívateľ
Zablokovaný užívateľ

Založený: 21.02.2007
Príspevky: 4009

PríspevokZaslal: St 06.02.08 20:49Odpovedať s citátomNávrat hore

však LIKE nie?
SELECT * FROM table WHERE Meno LIKE='pes'
Zobraziť informácie o autoroviOdoslať súkromnú správu
Zobraziť príspevky z predchádzajúcich:    
Zaslať odpoveď
Nemôžete pridávať nové témy do tohto fóra.
Nemôžete odpovedať na témy v tomto fóre.
Nemôžete upravovať svoje príspevky v tomto fóre.
Nemôžete mazať svoje príspevky v tomto fóre.
Nemôžete hlasovať v tomto fóre.

Powered by phpBB 2.x.x © 2005 - 2012 PCforum, webhosting by WebSupport, edited by JanoF

SEO - optimalizácia pre vyhľadávače

Freebsd