Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Blokada dodawania komentarzy na pewien czas
Strarus
post
Post #1





Grupa: Zarejestrowani
Postów: 339
Pomógł: 12
Dołączył: 22.11.2008

Ostrzeżenie: (20%)
X----


cześć:)
Chciałbym dodać taką fukcję, która uniemożliwiła by dodawanie komentarzy (oczywiście po uprzednim wpisaniu) na pewien czas np. 1 dzień. W jaki sposób mogę to zrobić? Tylko nie na cookies, ponieważ włamanie potrwa 30 sekund (IMG:http://forum.php.pl/style_emoticons/default/haha.gif) Ew. na IP, ponieważ i tak już je wykorzystuje.

pozdro
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
ShadowD
post
Post #2





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


1. Podczas wstawiania komentarza zapamiętujesz ip i datę/godzinę
2. Jeśli chce ktoś dodać komentarz to sprawdzasz czy istnieje już jego ip w bazie jeśli tak to sprawdzasz czy data z poprzedniego komentarza nie jest starsza niż X godzin jeśli nie to wyrzucasz błąd a jeśli tak pkt. 1...

Resztę znajdziesz w google...
Go to the top of the page
+Quote Post
Strarus
post
Post #3





Grupa: Zarejestrowani
Postów: 339
Pomógł: 12
Dołączył: 22.11.2008

Ostrzeżenie: (20%)
X----


sęk w tym, że jadę na txt... a ew. to zadziała na txt? jak coś to skrypt:
Kod
<?php
$data = date('d.m.Y H:i:s');
$str = ($_POST['ksywa']);
$ip= ($_SERVER['REMOTE_ADDR']);
$ksywa = trim($_POST['ksywa']);
$tresc = trim($_POST['tresc']);  

if(empty($ksywa) and empty($tresc)) {
    

echo 'Twoje IP to <b>'.$ip.'</b>. Będzie ono wyświetlane innym użytkownikom.<br/>
Dzisiaj jest <b>'.$data.'</b>.<br/>
<form action="" method="post">
<p class="style1">Nick: <input class="name" type="text" name="ksywa" style="width: 100px;" maxlength="10"/>
<p class="style1">Treść komentarza:
<textarea onchange="MaxL(this);" name="tresc" class="content">
</textarea><p>
<center><input type="submit" value="Wpisz!" /> </center>
</form>';
}
else {  
     $pliczek = file_get_contents("opinia.txt");
    
$plik = fopen("opinia.txt","w");



$dane = "<table class='coment'>
<tr>
<td>
<font class='nick'><b>Dodane przez:</b> ".$ksywa."</font><font class='date'><b>Dnia:</b> ".$data."</font>
</td>
</tr>
<tr>
<td>
<font class='nick'><b>Komentarz:</b></font><font class='comments'> ".$tresc."</font>
</td>
</tr>
<tr>
<td>
<font class='date'><b>IP:</b> ".$ip."</font>
</td>
</tr>
</table>
<br />\n";
  

     fwrite($plik,$dane.$pliczek);
    
     fclose($plik);
  
    
    echo "Twój komentarz zosał dodany! Dziękujemy! <a href='index.php'>Kliknij aby przejść do strony głównej</a><br/>Kliknij <a href='comment.php'>tutaj</a> jeśli chcesz dodać następny komentarz.";

}
  include ("opinia.txt");
?>
Go to the top of the page
+Quote Post
ShadowD
post
Post #4





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


Omg, zawsze możesz stworzyć katalog w którym będziesz tworzył np pliki o nazwie - ip i zawartością - data lub jeden plik w którym linia pod linią będą zapisywane te dane...

Ps Zawsze można przepisać to na mysql.

Ten post edytował ShadowD 6.12.2008, 13:44:04
Go to the top of the page
+Quote Post
Strarus
post
Post #5





Grupa: Zarejestrowani
Postów: 339
Pomógł: 12
Dołączył: 22.11.2008

Ostrzeżenie: (20%)
X----


A co polecasz? Ja myślę, że z MySQL mogę narobić sobie kłopotów, ponieważ jestem bardzo słaby... Tylko, że MySQL jest wygodny.. To jak myślisz?
Go to the top of the page
+Quote Post
ShadowD
post
Post #6





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


Tz ja osobiście jak uczyłem się php myślałem, że pliki txt jest to coś super, mega ale po krótkim czasie zorientowałem, iż nie jest to coś odpowiedniego do większych aplikacje. Więc moja rada jest taka byś zamienił pliki na bazę niejest ona taka straszna a napewno daje większe możliwości...
Go to the top of the page
+Quote Post
Mize
post
Post #7





Grupa: Zarejestrowani
Postów: 84
Pomógł: 6
Dołączył: 26.03.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Dobra, a co jeśli całe osiedle ma jedno IP ?
Zablokowanie komentowania/głosowania itp. jest bardzo trudne, a wręcz niemożliwe.
Ciastka? Wyłączy, IP/HOST? Zmienne albo wspólne. Dodatkowo można porównywać przeglądarke, ale to już mija się z celem.
Ja to rozwiązuje po prostu przez wymaganą rejestrację.
I blokuje danemu użytkownikowi możliwość komentowania na x minut.

Pozdrawiam.
Go to the top of the page
+Quote Post
ShadowD
post
Post #8





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


No tak, do wszystkiego można się przyczepić i na pewno zgodzę się z tobą że rejestracja jest jednym z sposobów zabezpieczenia się ale można zawsze założyć nowe i znowu problem...
Go to the top of the page
+Quote Post
Strarus
post
Post #9





Grupa: Zarejestrowani
Postów: 339
Pomógł: 12
Dołączył: 22.11.2008

Ostrzeżenie: (20%)
X----


Hmm... chyba coś mi nie wychodzi (IMG:http://forum.php.pl/style_emoticons/default/haha.gif) Próbowałem ale jakoś mi to średnio szło (nawet z książką), więc chyba poproszę o pomoc z tymi txt (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Jak już wcześniej wspomniałem jestem słaby w php (a o MySQL nie wspomnę) tak więc jeżeli ktoś ma pomysł jak to zrobić to niech napisze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Za porade stawiam pomoc (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Strarus 6.12.2008, 19:48:03
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.12.2025 - 18:42