[PHP] Wortzensur

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Glossy Cherry.

    [PHP] Wortzensur

    Hey,
    Warum könnte dieses Snippet funktionieren:

    PHP-Quellcode

    1. <?php
    2. $message = $_GET['message'];
    3. $badwords = array("xxx","xxx","xxx","xxx","xxx");
    4. $message = str_replace($badwords, "***", $message);
    5. echo $message;
    6. ?>


    aber dieses nicht?

    PHP-Quellcode

    1. <?php
    2. $badwords = array("xxx","xxx","xxx","xxx","xxx");
    3. $message = $_GET["message"];
    4. $nick = $_GET["nick"];
    5. //if ($nick = glossy then test on secret combination){
    6. }else{
    7. $message = str_replace($badwords, "***", $message);
    8. $chat = "chat.txt";
    9. $handle = fopen($chat , "a+");
    10. fwrite($handle , $nick . ": " . $message . "\r\n");
    11. fclose($handle);
    12. }

    Greetz
    Moderatorin: "Apropo ritzen.." Shin Chan: "hoho sie hat Po ritze gesagt"
    "saying to buy a mac because your anti-virus expired is like saying you're out of condoms so you're just going to go fuck dudes"
    "Wie auch in anderen Threads kann ich leider nichts bieten außer vielleicht spaß beim Skypen aber mehr leider auch nicht." - Sind kinder pornos nicht verboten?
    Nehm das als Wortzensur, dann geht es richtig:

    PHP-Quellcode

    1. $obscenities = @file("badword.txt");
    2. foreach ($obscenities as $curse_word)
    3. {
    4. $bad_word = trim($curse_word);
    5. $stars = "";
    6. if (stristr($text,$bad_word))
    7. {
    8. $length = strlen($bad_word);
    9. for ($i = 1; $i <= $length; $i++)
    10. {
    11. $stars .= "*";
    12. }
    13. $text = str_ireplace($bad_word,$stars,$text);
    14. }
    15. }

    Der Script ist nicht von mir, nur zur Info.
    geht so ned:

    PHP-Quellcode

    1. foreach ($obscenities as $curse_word)
    2. {
    3. $bad_word = trim($curse_word);
    4. $stars = "";
    5. if (stristr($message,$bad_word))
    6. {
    7. $length = strlen($bad_word);
    8. for ($i = 1; $i <= $length; $i++)
    9. {
    10. $stars .= "*";
    11. }
    12. $message = str_ireplace($bad_word,$stars,$message);
    13. }
    14. }

    Greetz
    Moderatorin: "Apropo ritzen.." Shin Chan: "hoho sie hat Po ritze gesagt"
    "saying to buy a mac because your anti-virus expired is like saying you're out of condoms so you're just going to go fuck dudes"
    "Wie auch in anderen Threads kann ich leider nichts bieten außer vielleicht spaß beim Skypen aber mehr leider auch nicht." - Sind kinder pornos nicht verboten?
    Hab verschiedene Kombinationen schon durch probiert, nichts hilft:
    pastebin.com/9eP8Jjrq
    full code (alles wieder umgestellt) , secret zensiert.

    Greetz
    Moderatorin: "Apropo ritzen.." Shin Chan: "hoho sie hat Po ritze gesagt"
    "saying to buy a mac because your anti-virus expired is like saying you're out of condoms so you're just going to go fuck dudes"
    "Wie auch in anderen Threads kann ich leider nichts bieten außer vielleicht spaß beim Skypen aber mehr leider auch nicht." - Sind kinder pornos nicht verboten?
    Funktioniert immernoch nicht:

    PHP-Quellcode

    1. <?php
    2. $message = $_GET["message"];
    3. $nick = $_GET["nick"];
    4. function BadwordFilter($Nachricht)
    5. {
    6. $Badwords = array("xxx","xxx","xxx","xxx","xxx");
    7. foreach($Badwords as $Badword)
    8. {
    9. $Nachricht = str_replace($Badword, str_repeat("*", strlen($Badword)), $Nachricht);
    10. }
    11. return $Nachricht;
    12. }
    13. if(!empty($nick) and !empty($message)){
    14. if(preg_match('/glossy.*?cherry|glossy|cherry/i', $nick)){
    15. if(FKIN SECURITY = TRUE){
    16. $chat = "chat.txt";
    17. $handle = fopen($chat , "a+");
    18. fwrite($handle , $nick . ": " . $message . "\r\n");
    19. fclose($handle);
    20. }
    21. }else{
    22. $messages = BadwordFilter($message);
    23. $chat = "chat.txt";
    24. $handle = fopen($chat , "a+");
    25. fwrite($handle , $nick . ": " . $messages . "\r\n");
    26. fclose($handle);
    27. }
    28. }
    29. header("Location: http://chat.cry4ice.de");
    30. ?>

    Greetz

    //edit: keiner eine idee? :S
    Moderatorin: "Apropo ritzen.." Shin Chan: "hoho sie hat Po ritze gesagt"
    "saying to buy a mac because your anti-virus expired is like saying you're out of condoms so you're just going to go fuck dudes"
    "Wie auch in anderen Threads kann ich leider nichts bieten außer vielleicht spaß beim Skypen aber mehr leider auch nicht." - Sind kinder pornos nicht verboten?

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Glossy Cherry“ ()