Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

mysql और php खोज हाइलाइटिंग

कोड के इस ब्लॉक में:

//display results
while ($row = $stmt->fetch())
{
    $explode_criteria = explode(" ", $_GET['criteria']);
    foreach ($explode_criteria as $key)
    {
        $highlight = preg_replace("/" . $key . "/", "<span class='highlight'>" . $key . "</span>", $row['name']);

        echo '<td><a target="_blank" href="' . $row['url'] . '">' . $highlight . '</a></td>';
        echo '<td>' . $row['version'] . '</td>';
        echo '<td>' . $row['cat'] . '</td>';
        echo '<td>' . $row['author'] . '</td>';

        echo '<td>' . $row['added'] . '</td>';
        echo '<td>' . $row['auth_dept'] . '</td>';

        echo '<td>';
    }
}

लूप लगातार $row['name'] . की बात कर रहा है , इसलिए प्रतिस्थापन किया जाता है, लेकिन अगली बार लूप होने पर यह अगले शब्द को मूल असंशोधित $row['name'] पर बदल देता है

मुझे लगता है कि इससे आपको मदद मिलनी चाहिए:

//display results
while ($row = $stmt->fetch())
{
    $explode_criteria = explode(" ", $_GET['criteria']);
    $highlight = $row['name']; // capture $row['name'] here
    foreach ($explode_criteria as $key)
    {
        // escape the user input
        $key2 = preg_quote($key, '/');
        // keep affecting $highlight
        $highlight = preg_replace("/" . $key2 . "/", "<span class='highlight'>" . $key . "</span>", $highlight);

        echo '<td><a target="_blank" href="' . $row['url'] . '">' . $highlight . '</a></td>';
        echo '<td>' . $row['version'] . '</td>';
        echo '<td>' . $row['cat'] . '</td>';
        echo '<td>' . $row['author'] . '</td>';

        echo '<td>' . $row['added'] . '</td>';
        echo '<td>' . $row['auth_dept'] . '</td>';

        echo '<td>';
    }
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL - ग्रुप बाय लिमिट

  2. आगामी तिथियों के बाद पिछली तिथियों के साथ तिथि के अनुसार आदेश दें

  3. अपरिभाषित अनुक्रमणिका:C:\wamp\www\Website\storeadmin\admin_login.php.. में उपयोगकर्ता नाम और पासवर्ड के लिए समान

  4. रूबी ऑन रेल्स में रनटाइम पर एक टेबल बनाएं

  5. Laravel . के साथ विदेशी कुंजी द्वारा सभी रिकॉर्ड कैसे प्राप्त करें