![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
Jak to zrobic zeby skrypt liczyl linki zawarte w formularzu i jezeli jest ich np. wiecej niz 3 nie dodawal komentarza do bazy
![]()
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 5.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
mnie tez to ciekawi w jaki sposob mozna to zrobic
![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 70 Pomógł: 0 Dołączył: 29.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Jak to zrobic zeby skrypt liczyl linki zawarte w formularzu i jezeli jest ich np. wiecej niz 3 nie dodawal komentarza do bazy ![]()
Średni pomysł żeby to co przychodzi z $_GET wstawiać odrazu bez sprawdzania w zapytanie do bazy (bezpieczeństwo). zliczyć linki.... osobiście użyłbym wyrażem regularnych, tj preg_match_all(...) a jeśli formularz będzie wysyłany masę razy to być może pokusiłbym się o coś szybszego, np strpos(...) -------------------- ![]() |
|
|
![]()
Post
#4
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
Ale ja nie jestem zbyt biegly w php. Moglbys mi pokazac jak mam to zastosowac
![]() |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 508 Pomógł: 75 Dołączył: 2.11.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Chcialbym tylko powiedziec ze wlasnie przy takich problemach samemu mozna najlepiej uczyc sie PHP. Metoda prob i bledow + manual na php.net ;]
|
|
|
![]()
Post
#6
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
wiem ja caly czas proboje tylko mi nie wychodzi dlatego napisalem na forum
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 508 Pomógł: 75 Dołączył: 2.11.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
i w ktorym miejscu to dac
![]() |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 508 Pomógł: 75 Dołączył: 2.11.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Zamiast (skasuj to):
wstaw:
Chociaz nie zapewniam ze na 100% to bedzie dzialalo. |
|
|
![]()
Post
#10
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
Zrobilem tak i niedziala
![]()
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 508 Pomógł: 75 Dołączył: 2.11.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
A mozesz napiac dokladniej co jest zle. Czy dodaje do bazy czy co...
|
|
|
![]()
Post
#12
|
|
Grupa: Postów: 0 Pomógł: Dołączył: -- Ostrzeżenie: (0%) ![]() ![]() |
no dodaje do bazy
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 508 Pomógł: 75 Dołączył: 2.11.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
To ponizej u mnie dziala na 100% dobrze. Drobne zmiany zrobilem i dziala.
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 12.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich
![]() Mam podobny problem ze spamem w komentarzach. Na razie spróbowałem dodać obrazki z tekstem w najprostrzy możliwy sposób, ale bydlaki jakoś to obeszły. Mógłby mi ktoś pomóc / podpowiedzieć jak to trochę udoskonalić ? Zastanawiam sie nad filtrowaniem słów kluczowych typu "viagra" ale to nigdy nie będzie doskonałe... Tu przykład zaśmieconego komentarza: http://www.likh.fc.pl/Aradesh/DT/index.php?id=ww4 Obecny kod skryptu obsługującego komentarze (wiem że nie jest zbyt wyszukany ale napisałem go w jeden wieczór, a i orłem w php za bardzo nie jestem ![]() Cytat <?
$katalog = "pliki/komentarze/"; $id = $_REQUEST["id"]; $pole1 = trim($_POST["pole1"]); $pole2 = trim($_POST["pole2"]); $pole3 = trim($_POST["pole3"]); $kod_trans = $_POST["kod_trans"]; $literki[0]="dupa"; $literki[1]="h17kjp"; $literki[2]="f283am"; $literki[3]="ds2w8k"; $literki[4]="h9ax24"; $literki[5]="6wp42z"; $literki[6]="43cn1j"; $literki[7]="i56vwb"; $literki[8]="c3e29d"; $literki[9]="u7wk38"; $literki[10]="5xsw2h"; $kod=rand(1,10); if ($pole1<>"" and $pole2<>"" and strcmp($literki[$kod_trans],$pole3)==0 ) { $pole1 = stripslashes($pole1); $pole2 = stripslashes($pole2); $pole2=eregi_replace("\r","",$pole2); $pole2=eregi_replace("\n","<br />",$pole2); $data = sprintf("%04d-%02d-%02d %02d:%02d:%02d", date("Y"), date("m"), date("d"), date("H"), date("i"), date("s")); $f=fopen("$katalog$id.txt","a"); fputs($f,"$data`$pole1`$pole2\n"); fclose($f); } if (file_exists("$katalog$id.txt")) { $dane = file("$katalog$id.txt"); $dane = array_reverse($dane); foreach ($dane as $linia) { $l = explode("`", $linia); echo "<p>Dnia <b>$l[0]</b> użytkownik <b>$l[1]</b> napisał:<br />$l[2]</p>"; } } else echo "Twój komentarz może być pierwszy..."; ?> <form action="index.php" method="post"> <input type="hidden" name="id" value="<? echo $id; ?>" /> <input type="hidden" name="kod_trans" value="<? echo $kod; ?>" /> <br><br> <table> <tr><td>Nick:</td> <td><input type="text" name="pole1" /></td></tr> <tr><td valign="middle"><br>Kod z obrazka:<br></td> <td valign="middle"><br><input type="text" name="pole3" /> <? echo "<img src=\"pliki/$kod.jpg\">";?><br><br></td></tr> <tr><td>Komentarz:</td> <td><textarea name="pole2" rows="15" cols="60"></textarea></td></tr> <tr><td> </td><td><input type="submit" value=" Dopisz! " /></td></tr> </table> </form> |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
Cytat <input type="hidden" name="kod_trans" value="<? echo $kod; ?>" /> Choćby nie wiem jak skomplikowany był ten obrazek to dla botów odczytanie tekstu będzie banalne. Tak samo podawanie jawnie numeru obrazka jest dla botów ogromnym ułatwieniem. Jeśli nie chcesz bawić w dynamiczne generowanie obrazków to: 1. Poczytaj o sesjach. Podczas wyświetlania formularza zapisuj do $_SESSION losowy numer kodu z tablicy $literki. 2. Stwórz sobie dodatkowy plik php, np. captcha.php, który odczyta z tablicy $_SESSION numer kodu i na tej podstawie wyśle do przeglądarki odpowiedni obrazek:
Dzięki temu do formularza będziesz mógł wstawić obrazek z nic nie znaczącym źródłem:
3. Po wysłaniu formularza sprawdzasz czy kody się zgadzają. Jeśli tak to dodajesz komentarz. Ten post edytował Kicok 12.05.2007, 13:27:43 -------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 12.05.2007 Ostrzeżenie: (0%) ![]() ![]() |
Niegłupie, ale widzę że będę się musiał w wolnej chwili trochę douczyć żeby to wdrożyć w pełni świadomie
![]() A póki co dorzuciłem zabezpieczenie proste do bólu wycinające komentarze zawierające słowa kluczowe typu "viagra", "cialis" itd. I o dziwo działa ![]() ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 04:10 |