URL aus Strings löschen

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

  • URL aus Strings löschen

    Hallo zusammen,
    vielleicht gab es hierzu schon einen ähnlich Thread, habe aber nichts informatives gefunden.
    In meinem selbstprogrammierten Gästebuch sollen aus dem Contentinhalt URLs herausgefiltert und vernichtet werden. Doch ich weiss nicht wie ich sowas machen soll. Mit der Formel preg_replace oder so kann ich mir nicht vorstellen. Kann mir da jemand weiter helfen?

  • #2
    Re: URL aus Strings löschen

    Original geschrieben von Salitor
    Mit der Formel preg_replace oder so kann ich mir nicht vorstellen.
    aber genau das wäre die lösung.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Re: Re: URL aus Strings löschen

      Original geschrieben von Abraxax
      aber genau das wäre die lösung.
      aber wie mache ich das denn? preg_replace("http://www."," ",$string);

      aber dann lösche ich ja nur den ersten Teil, dann würde statt http://www.php-resource.de jetzt php-resource.de dort stehen

      Kommentar


      • #4
        http://php.benscom.com/manual/de/ref.pcre.php und dann nach Pattern Synthax

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Re: Re: Re: URL aus Strings löschen

          Du musst halt schon das richtige Suchmuster haben dafür, benutze mal due boardsuche denn fragen über Reguläre Ausdrucksmuster gibt es hier zuhauf.


          Sers
          Der Boris

          Kommentar


          • #6
            Hier hab ich mal n Tutorial darüber angefangen... wenn du Fragen dazu hast einfach her damit

            Kommentar


            • #7
              Also ich habe es jetzt mit preg_replace mit austauscht kontrollieren. ausprobiert. Mit xampp funktionierte es einwandfrei und im Internet funktioniert es auf einmal nicht mehr.
              PHP-Code:
              $anzahl=0;

              $suchmuster[0] = '/http:/';
              $suchmuster[1] = '/www./';

              $ersetzen[0] = '/http:/';
              $ersetzen[1] = '/www./';

              $strNachricht=preg_replace($suchmuster$ersetzen$_POST['strNachricht'], $anzahl);

              echo 
              $anzahl
              Weiss jemand woran es liegt?

              Kommentar


              • #8
                Mit xampp funktionierte es einwandfrei und im Internet funktioniert es auf einmal nicht mehr.
                Heisst das dass $anzahl == 0 ist ?
                Dein RegExp funzt gemäss RegExp Evaluator

                Gruss

                tobi

                p.s.
                probiers mal so
                PHP-Code:
                $string preg_replace('/http:\\/\\/|www\\./','',$_POST['strNachricht']); 
                Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                Kommentar


                • #9
                  Code:
                  $string = preg_replace('/(http:\/\/|https:\/\/|www|[.-_a-z0-9]+)/',$_POST['strNachricht']);
                  ich würde noch https hinzufügen, man sollte halt mit allem rechnen
                  Zuletzt geändert von boris-schneider; 20.04.2006, 22:29.

                  Kommentar


                  • #10
                    @boris
                    Bei deiner Version wird aber PHP motzen. Du solltest \/ und nicht nur / schreiben

                    Gruss

                    tobi
                    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                    Kommentar


                    • #11
                      @jahlives
                      damn, das ist drinnen, aber der PHPCode parser schmeisst die bei mir raus, nur via [.CODE] siehst man bei mir die \/
                      Zuletzt geändert von boris-schneider; 20.04.2006, 22:31.

                      Kommentar


                      • #12
                        Also gut kenne ich mich da noch nicht mit aus. Ich habe hier folgendes getestet und immer eine Fehlermeldung bei pcre.nophia.de erhalten:

                        PHP-Code:
                        $string preg_replace('http:\/\/|https:\/\/|www|[.-_a-z0-9]+)/',' ',$_POST['strNachricht']); 
                        Woran kann das denn liegen? Bei xampp funktioniert es mit der Var $anzahl im Internet wird jedoch der Inhalt nicht gefüllt.


                        Also ich habe etwas weiter recherchiert und habe herausgefunden, dass $anzahl deshalb nicht funktioniert, da dies erst ab der php Version 5.1 möglich ist und auf dem Server 4.3 läuft. Weiss jemand wie ich nun verhindern kann, das jemand URLs in den Content schreibt?
                        Zuletzt geändert von Salitor; 27.04.2006, 11:51.

                        Kommentar


                        • #13
                          Hallo, kann mir keiner helfen? ICH brauche dringend Hilfe.
                          Irgendwie habe ich das Gefühl, dass einer die Seite gehackt hat. Obwohl ich das Eintragen von Beiträgen deaktiviert habe, steht wieder Spam drinnen mit der Datierung vom 15.04.06, wo das erste Mal dieser Spam im Gb war. Wie kann ich sowas unterbinden?

                          Ich habe einen IP Filter, der Einträge nur nach einer bestimmten Zeit erlaubt. ABER zur Zeit ist das Eintragen ja komplett deaktiviert gewesen und trotzdem ist da wieder Spam drinnnen.

                          Kommentar


                          • #14
                            wo kommt $anzahl her?

                            Ich tippe auf register_globals...

                            Kommentar


                            • #15
                              Original geschrieben von prego
                              wo kommt $anzahl her?

                              Ich tippe auf register_globals...
                              Bei neueren PHP Version ist es Möglich zu zählen, wie oft mit preg_replace etwas verändert wurde. Dies ist die Var $anzahl.

                              Jedoch funktioniert das bei auf dem Server nicht, da ich nicht die passende PHP Version drauf habe.

                              Jedenfalls muss ich schnell das Gästebuch wieder sicher bekommen, weiss nur nicht wie dazu kommt, dass Spam im Gb ist, obwohl niemand mehr einen Eintrag schreiben konnte.

                              Kommentar

                              Lädt...
                              X