Datenfeld nach Begriffen durchsuchen ?

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

  • Datenfeld nach Begriffen durchsuchen ?

    Hi,
    Ich möchte aus meiner mysql db im Datensatz posting, dass Feld text nach einigen Begriffen durchsuchen.

    Ich möchte so einige Datensätze ausfiltern, in denen bestimmte Wörter auftauchen, die ich vorher definiert habe, also quasi so eine Art Filter.

    Aber wie mache ich das?

  • #2
    gibts da nicht schon genug postings zu ?

    select *
    from db
    where text like '%blah%'
    lg psykadeliK

    ---- schnapp ----

    Kommentar


    • #3
      oder
      er benutzt str_replace() und legt sich davor einen array mit den
      begriffen an die er rausfiltern möchte.
      shit happens

      Kommentar


      • #4
        aber dann muss er ja erstmal ALLE daten aus der db lesen um sie dann zu filtern, es ist besser das alles von der db machen zu lassen.
        sinnvoller und vor allem performanter
        lg psykadeliK

        ---- schnapp ----

        Kommentar


        • #5
          filter

          Danke schon mal für euere Antworten.

          Würde das aber gern so machen:

          $filter = "wortxyz";

          und dann in Abfrage: text NOT LIKE '%$filter%'

          Das geht auch. Wie bekomme ich es aber jetzt hin, dass ich dem $filter zum Beispiel mehrere Wörter beibringe?

          $filter = "wortxyz" und "wort123" zum Beispiel?

          Ich könnte es machen mit $filter =; $filter1 =; $filter2 =

          Ist aber etwas umständlich

          Kommentar


          • #6
            da wird dir glaub ich wirklich nix anderes übrig bleiben
            als dass du dir einen array machst mit den ganzen wörten,
            du müsstest dann halt deine abfrage solange durchlaufen
            bis du das ende des arrays erreicht hast.
            was anderes fällt mir auch gerade nicht ein.
            shit happens

            Kommentar


            • #7
              also wenn die filterwörter ähnlich sind kannst du auch mit regulären ausdrücken arbeiten

              peter
              Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
              Meine Seite

              Kommentar


              • #8
                Doch nochmal Hilfe

                Brauche jetzt doch nochmal Hilfe.

                Will es nun so machen, dass ich schon bei Eingabe prüfen möchte, ob bestimmte Wörter vorkommen.

                Also bei abschicken des Formulares soll dann das textfeld überprüft werden.

                Das Textfeld ist eine textarea.

                Wie kann ich das machen?

                Der textarea hab ich die variabel $text zugeordnet.

                Also if ($text ..... dann müsste eigentlich LIKE kommen){

                aber dafür gibts keine operator oder?

                Kommentar


                • #9
                  Du willst checken, ob die wörter in der DB sind? dann machs doch mit der LIKE-Query.

                  Kommentar


                  • #10
                    hmm

                    Nein nicht ob die Daten schon in der db sind, sondern schon bei Eingabe in die textarea.

                    Ich habe eine textarea, die bei abschicken des Formulares geprüft werden soll.

                    Ich kann es machen mit if ($text == "xyz") aber dann überprüft er mir nur das erste Wort in der Textarea. Er soll aber den gesamten Inhalt der Textarea auf dieses Wort überprüfen.

                    Kommentar


                    • #11
                      Nein nicht ob die Daten schon in der db sind, sondern schon bei Eingabe in die textarea.
                      Wie willst du schon bei der Eingabe überprüfen, wenn du nichtmal die Connection zur DB hast? Stichwort Serverseitig/Klientseitig ist auch hier angebracht.

                      Ich kann es machen mit if ($text == "xyz") aber dann überprüft er mir nur das erste Wort in der Textarea.
                      Falsch!

                      Er soll aber den gesamten Inhalt der Textarea auf dieses Wort überprüfen.
                      Willst du das Serverseitig oder Klientseitig machen?

                      Kommentar


                      • #12
                        ich versteh das ganze jetzt so,
                        er hat ein formular, in der textarea kann er nen text eingeben,
                        aus diesen geschriebenen text will er nun z.b. die wörter
                        "scheiße", "idiot", "napl" raus filtern so dass diese gar nicht
                        erst in die datenbank geschrieben werden.

                        hilft ihm da vielleicht str_replace() weiter?
                        shit happens

                        Kommentar


                        • #13
                          Original geschrieben von Magic11
                          hilft ihm da vielleicht str_replace() weiter?
                          theoretisch ja, praktisch nein.

                          wenn idiot nicht erlaubt ist, versuche ich halt i*d*i*o*t etc.

                          und mit solchen "sperren" erhöht man m.E. nur den "anreiz" für gewisse user, es trotzdem hinzukriegen, "böse" wörter zu posten.
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            hmm

                            Ja klar weiss ich, dass dadurch der Reiz eventuell erhöht wird, trotzdem möchte ich es so machen.

                            Also nochmal zu meiner Frage:

                            Es soll vor dem Eintrag in die db geprüft werden, ob der User ein "böses" Wort in sein Textfeld eingegen hat.

                            Kommentar


                            • #15
                              Re: hmm

                              Original geschrieben von IceT
                              Also nochmal zu meiner Frage:
                              nein, erst mal berücksichtigst du jetzt bitte die bisherigen antworten - Magic11 hatte ja z.b. auch was vorgeschlagen.
                              I don't believe in rebirth. Actually, I never did in my whole lives.

                              Kommentar

                              Lädt...
                              X