Evidentiere cuvant cautat

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
alexinio3d
Mesaje:96

Evidentiere cuvant cautat

Am codul acesta :

Cod: Selectaţi tot

// Variabile-----------------------
if(!isset($_POST['search'])){ 
    $search = htmlspecialchars($search);
} else { 
    $search = $_POST['search'];
}
    if(!empty($_POST['search'])){
    $ite_desc = "item_desc_".$_SESSION['lang'];
    $query = mysql_query("SELECT * FROM `store_items` WHERE $ite_desc LIKE '%$search%'");
        if(mysql_num_rows($query) > 0) {
            echo "<div class=\"alert alert-info\"><table class=\"table table-hover\">";
            echo "<thead><th><i><strong>#</strong></i></th><th><i><strong>".NUME_OBIECT_TXT."</strong></i></th><th><i><strong>".TEXT_TXT."</strong></i></thead>";
            $loc = 1;
            while($search = mysql_fetch_array($query)){
            $id = $search['id'];
            $titlu = $search['item_title_'.$_SESSION['lang']];
            $desc = $search['item_desc_'.$_SESSION['lang']];
            echo "<tr><td>$loc</td><td><a href=\"showitem.php?lang=".$_SESSION['lang']."&produs=$titlu\">$titlu</a></td><td>$desc</td></tr>";
            $loc++;
            }
            echo "</table></div>";
        }
        else {
        echo "<div class=\"alert alert-block\"><center>".ZERO_REZULTATE_TXT."</center></div>";
        }
    }
    else{
        echo "<div class=\"alert alert-error\"><center>".EROARE_SPECIFICARE_TXT."</center></div>";
    } 
Unde ar trebui sa pun linia str_ireplace pentru a pune o evidentiere la cuvantul cautat in tot textul carel gaseste .
Siteuri create / configurate de mine :
SilvoProject.Ro ( Magazin Online ) : SilvoProject.Ro
TreiSute.Ro ( Comunitate de gaming ) : TreiSute.Ro

MarPlo Mesaje:4343
Salut
Daca acel cuvant se afla in $desc, poti face asa:

Cod: Selectaţi tot

//...
$desc = $search['item_desc_'.$_SESSION['lang']];
$desc =  str_ireplace($search, '<span style="color: blue;">'. $search .'</span>', $desc);
//... 

alexinio3d Mesaje:96
Am incercat cum ai spus dar imi da urmatoarea eroare

Cod: Selectaţi tot

Notice: Array to string conversion in C:\xampp\htdocs\silvo\include\search.php on line 24
Siteuri create / configurate de mine :
SilvoProject.Ro ( Magazin Online ) : SilvoProject.Ro
TreiSute.Ro ( Comunitate de gaming ) : TreiSute.Ro

MarPlo Mesaje:4343
Nu stiu ce e la linia 24, sau cum ai aplicat codul. Dar uite un exemplu pe care-l poti testa, sa intelegi cum functioneaza si sa aplici functia str_ireplace() in scriptul tau.

Cod: Selectaţi tot

<?php
$search = 'cuvant';
$desc = 'O descriere oarecaree, cu un cuvant cautat';
$desc =  str_ireplace($search, '<span style="font-weight:800; color:blue;">'. $search .'</span>', $desc);
echo $desc;