|
| Zobacz poprzedni temat :: Zobacz następny temat |
| Autor |
Wiadomość |
jsmp
Dołączył: 12 Mar 2009 Posty: 3
|
Wysłany: Czw Mar 12, 2009 11:02 pm Temat postu: [PHP] Cenzor - automatyczny moderator treści |
|
|
Masz własnego bloga lub serwis w którym materiały mogą być dowolnie komentowane przez wszystkich użytkowników, a jednocześnie nie masz czasu na stałe moderowanie wszystkich nadchodzących komentarzy ?
Na pewno przyda Ci się funkcja, która sama za Ciebie pousuwa ewentualne wulgarne wyrażenia.
Dzięki poniższemu skryptowi w łatwy sposób zapanujesz nad niechcianymi komentarzami.
Skrypt składa się z dwóch części. Pliku z funkcją cenzurującą oraz pliku z bazą wyrazów cenzurowanych. Dzięki rozdzieleniu, w łatwy sposób dodasz nowy plik z pełniejszą bazą.
plik: cenzor.php
| Kod: | <?php
/* ------------Copyright------------------
Cenzor
autor: jsmp
www: jsmp.republika.pl
kontakt: jsmp@vp.pl
W przypadku użytku komercyjnego proszę o kontakt.
------------Copyright------------------ */
function cenzor($txt){
###----USTAWIENIA FUNKCJI CENZURUJACEJ---
$znacznik = '<span style="color:red">Ocenzurowano</span>';
###----KONIEC USTAWIEN---
$p = file_get_contents('cenzura.txt');
$p = str_replace(", ", '[a-z]*|[a-z]*', $p);
$txt = eregi_replace($p, $znacznik, $txt);
return $txt;
};
?> |
W zmiennej $znacznik przechowywany jest fragment, który będzie wstawiany za każdym razem gdy w kontrolowanym tekście będzie znaleziony nieodpowiedni wyraz. W powyższym przykładzie daje to efekt:
Ocenzurowano
Linijka 14: pobranie zawartości pliku cenzura.txt (o pliku mowa będzie w dalszej części), w linii następnej następuje zamienienie wszystkich przecinków na |
Jest to konieczne dlatego, że znak | jest rozumiany w wyrażeniu regularnym jako OR (lub).
Linijka 18: Przeszukuje cenzurowany tekst w poszukiwaniu wyrazów znajdujących się w ułożonym powyżej wyrażeniu regularnym.
linijka 19: Zwraca przefiltrowany tekst.
Wygląd pliku z cenzurowanymi wyrazami:
cenzura.txt
| Kod: | | wyraz1, wyraz2, wyraz3, wyraz3 |
Należy jednak pamiętać by PODWOIĆ ostatni wyraz.
(chyba że ktoś potrafi rozwiązać ten problem)
Aby skorzystać na danej podstronie ze skryptu, należy na wstępie zaincludować plik z funkcją cenzor, lub wstawić na początku kod funkcji (pierwszy kod).
Wywołanie funkcji:
DEMO
W przypadku jakichkolwiek problemów ze skryptem proszę o pisanie w tym temacie. _________________ Po radosnej stronie | WEBSTART - Webmasterzy webmasterom
Czy użytkownik o IP:[img]http://kinfo.ovh.org/ip.php[/img] pisze mądrze ? |
|
| Powrót do góry |
|
 |
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
Powered by phpBB © 2001, 2005 phpBB Group Sonic free theme by spleen
|