Ankündigung

Einklappen
Keine Ankündigung bisher.

Suche und formatiere das Wort....

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • rumwerkerli
    hat ein Thema erstellt Suche und formatiere das Wort.....

    Suche und formatiere das Wort....

    Hallo liebe community!


    ich habe ein kleines problem... ich stehe grade wie der Ochse vorm berg...
    vllt kann mir jemand helfen oder hat zufällig einen schnipsel irgendwo rumfliegen...


    Nun zu meinem Problem

    Ich habe einen text in einer tabelle meiner Datenbank. Um genau zu sein ein Text von einem Kapitel.(tbl_ff_kap -> kap_txt)
    Dieses Text möchte ich gern nach bestimmten Worten durchsuchen lassen die sich in einer anderen tabelle befinden (tbl_whitelist -> ges_wort)
    Wenn dieses Wort im Text vorhanden ist, soll es mit einem css versehen werden. Egal wie oft dieses Wort im Text vorkommt...


    ich hab mittlerweile schon viel probiert.. mit text ersetzen durch bla... aber irgendwie sehe ich scheinbar den Wald vor lauter bäumen nicht mehr...
    ich wäre glücklich wenn man mir heute abend noch jemand helfen könnte... vllt auch mit einem Code Schnipsel~


    ich wäre wirklich sehr dankbar

  • Kiboman
    antwortet
    Sonst melde dich dann machen wir das in php
    Wird auch einfacher sein

    Beim nächsten post den Code mit Posten was schon versuch wurde

    Einen Kommentar schreiben:


  • rumwerkerli
    antwortet
    ok gut dankeschön, ich werds mal probieren, vllt haut das tatsächlich besser hin~

    Einen Kommentar schreiben:


  • Kiboman
    antwortet
    in php wo ist das problem hier noch was für mysql die funktioniert besser hab grade die ganze zeit dran gefeilt

    Du musst nur den Qureey anpassen und <MEIN_TAG> durch zb <span class="abcd">...</span> ersetzten

    Code:
    SELECT DISTINCT
    @text := k.text,
    @i := IF (@i>0, @i, 0)+1,
    (SELECT @text := REPLACE(@text,s.suchwort,CONCAT('<MEIN_TAG>',s.suchwort,'</MEIN_TAG>')) FROM `kapitel` WHERE id = k.id) AS text_neu
    FROM suche AS s,
    kapitel AS k
    WHERE k.id = 21
    ORDER BY @i DESC
    LIMIT 1
    in php führe dir str-replace oder preg_replace zugute
    die suchwörter dann in einer schleife ersetzten

    Einen Kommentar schreiben:


  • rumwerkerli
    antwortet
    na ich würde es eben gerne in php machen... es ist eben so gedacht das Wörter das auf der Whitelist stehen hervor gehoben werden...~ also sprich die worte im string suchen und hervor heben

    Einen Kommentar schreiben:


  • Kiboman
    antwortet
    in mysql würde ich die Kapitel pauschal so durchsuchen
    Code:
    SELECT DISTINCT
    kapitel.id,
    kapitel.text,
    woerter.suchwort AS suchwort
    FROM
    kapitel,
    woerter
    WHERE
    kapitel.text LIKE CONCAT('%',woerter.suchwort,'%')
    nach dem 4. mal lesen hab ich dein frage verstanden
    Code:
    SELECT DISTINCT
    @suchwort := w.wort,
    k.text AS text_alt,
    REPLACE(k.text,@suchwort,CONCAT('<MEIN_TAG>',@suchwort,'</MEIN_TAG>')) AS text_neu
    FROM 
    woerter AS w, 
    kapitel AS k

    Einen Kommentar schreiben:

Lädt...
X