Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Banowanie IP.
Frostbourn
post
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 25.10.2008

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


Dopiero zaczynam cokolwiek pisać w php. Siedze już nad tym 3 dzień, nigdzie nie mogę nic znaleźć.
Otoż mam taki skrypt shoutboxa i próbuje go zmodyfikować tak, żęby po kliknięciu w link dodawało mi adres ip autora postu do pliku zbanowanych ip (bannedips.php) i dodatkowo usuwało tego posta z pliku shouts.php. Niestety dodaje mi ip wszystkich, którzy napisali jakieś posty łącznie ze mną. Pomożecie?

Część kodu, który próbuje zmienić:
  1. <?php
  2. $shouts = file("shouts.php");
  3. $shouts = array_reverse($shouts);
  4. foreach ($shouts as $item){
  5.    if ($row_count == $numshoutsdisplay){
  6.        if ($_REQUEST["viewall"] == true)    echo "<div id='moreshouts' style='display:inline'>";
  7.        else    echo "<div id='moreshouts' style='display:none'>";
  8.        $viewalled = true;
  9.    }
  10.    
  11.    if ($_GET[akcja]=='zbanuj') {
  12.            if($FilePointer = fopen("lists/bannedips.php", "a+")){
  13.            fwrite($FilePointer,"$ip\n");
  14.            fclose($FilePointer);
  15.            }
  16.            echo "<script>location.href='shoutboxadm.php';</script>";
  17.     }
  18.    
  19.    $row = ($row_count % 2) ? "one" : "two";
  20.    list ($poster,$message,$date,$time,$ip) = explode ("|^|", $item);
  21.    $thisnamecolor = "";
  22.    $thisnamecolor = colornames($poster,$thisnamecolor);
  23.    $message=profanityfilter(shoutcode(smilies(killhtml($message))));        
  24.    $thisshout = "<span style='color: $thisnamecolor !important;' class='name'><a href='shoutboxadm.php?akcja=zbanuj'><img src='ban.png' title='Zbanuj to IP:&nbsp; $ip' border='0'></a>$poster</span> $message";
  25.    $thisshout = killscript($thisshout);
  26.    echo "<div class='shout' id='row-$row' title=\"Napisano $date @ $time\">$thisshout</div>";
  27.    $row_count++;
  28. }
  29. ?>


Ten post edytował Frostbourn 23.12.2008, 17:35:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Frostbourn
post
Post #2





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 25.10.2008

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


  1. <?php
  2. include "../db_connect.php";
  3. polaczenie();
  4. $ip=$_SERVER['REMOTE_ADDR'];
  5. $zap=mysql_query("SELECT * FROM bans WHERE ip='$ip' LIMIT 1");
  6. $row=mysql_fetch_row($zap);
  7. if($row==1)
  8. {
  9. echo '$bannedmessage';
  10. }
  11.  
  12.  
  13.        
  14. $shouts = file("shouts.php");
  15. $shouts = array_reverse($shouts);
  16. foreach ($shouts as $item){
  17.    if ($row_count == $numshoutsdisplay){
  18.        if ($_REQUEST["viewall"] == true)    echo "<div id='moreshouts' style='display:inline'>";
  19.        else    echo "<div id='moreshouts' style='display:none'>";
  20.        $viewalled = true; //We already displayed the viewall div
  21.    }
  22. $row = ($row_count % 2) ? "one" : "two";
  23.    list ($poster,$message,$date,$time,$ip) = explode ("|^|", $item);
  24.    $thisnamecolor = "";
  25.    $thisnamecolor = colornames($poster,$thisnamecolor);
  26.    $message=profanityfilter(shoutcode(smilies(killhtml($message))));        
  27.    $thisshout = "<span style='color: $thisnamecolor !important;' class='name'>";
  28.    while($w=mysql_fetch_array($jakies_zapytanie))
  29. {
  30. echo "jakies dane";
  31. if($_SESSION['admin']=='ok')
  32. {
  33. echo "<a href=ban.php?ip=".$w['ip']."><img src='ban.png' title='Zbanuj to IP:&nbsp; $ip' border='0'></a>$poster</span> $message";
  34. }
  35. echo "jakas dalasz tresc";
  36. }
  37.  
  38.    $thisshout = killscript($thisshout);
  39.    echo "<div class='shout' id='row-$row' title=\"Napisano $date @ $time\">$thisshout</div>";
  40.    $row_count++;
  41. }
  42. ?>


Tak zrobilem, ale przestałą się wyświetlać zawartość shoutboxa. Jednak wolalbym, zeby mnie ktoś nakierował jak zrobic na plikach.





Zrobiłem tak. Teraz banuje tylko moje ip.

  1. <?php
  2. if ($_GET[akcja]=='zbanuj') {
  3.           if($FilePointer = fopen("lists/bannedips.php", "a+")){
  4.            fwrite($FilePointer,"$_SERVER[REMOTE_ADDR]\n");
  5.            fclose($FilePointer);
  6.            }
  7.            
  8.            echo "<script>location.href='shoutboxadm.php';</script>";
  9.            
  10.        }
  11.        
  12. $shouts = file("shouts.php");
  13. $shouts = array_reverse($shouts);
  14. foreach ($shouts as $item){
  15.    if ($row_count == $numshoutsdisplay){
  16.        if ($_REQUEST["viewall"] == true)    echo "<div id='moreshouts' style='display:inline'>";
  17.        else    echo "<div id='moreshouts' style='display:none'>";
  18.        $viewalled = true; //We already displayed the viewall div
  19.    }
  20.    
  21.    
  22.    
  23.    $row = ($row_count % 2) ? "one" : "two";
  24.    list ($poster,$message,$date,$time,$ip) = explode ("|^|", $item);
  25.    $thisnamecolor = "";
  26.    $thisnamecolor = colornames($poster,$thisnamecolor);
  27.    $message=profanityfilter(shoutcode(smilies(killhtml($message))));        
  28.    $thisshout = "<span style='color: $thisnamecolor !important;' class='name'><a href='shoutboxadm.php?akcja=zbanuj'><img src='ban.png' title='Zbanuj to IP:&nbsp; $ip' border='0'></a>$poster</span> $message";
  29.    $thisshout = killscript($thisshout);
  30.    echo "<div class='shout' id='row-$row' title=\"Napisano $date @ $time\">$thisshout</div>";
  31.    $row_count++;
  32. }
  33. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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: 9.10.2025 - 12:48