Gå til innhold

Hjelp til IP-ban. Nesten ferdig.


Anbefalte innlegg

Hei!

Fann ut at det var kjekt å messe i gjesteboka mi, så eg må nok lage meg eit ip-ban-script. Det er ikkje heilt ferdig, og eg fekk litt problem på slutten. Det er mogleg at eg har litt problem med include.

Eg har to delar i funksjonen. Banne IP og avslå/godta ip. Banninga er eg ferdig med. Det er den siste delen som ikkje funkar som han skal...

 

Alt handlar opp mot databasen "xxx" og i tablen "ipban".

 

Her er funksjonen min:

<?php
function ipban() {
include "sqlinfo.php";
$connection = mysql_connect($sqlhost, $sqlusername, $sqlpassword);
mysql_select_db("xxx", $connection);
$i = $_SERVER['REMOTE_ADDR'];
$q = "SELECT ip FROM ipban WHERE ip = '$i'";
if (mysql_num_rows($q) >= 1) {
 die("Utestengt");
 }
else {
 return 1;
 }
} ?>

 

Når eg skal skjekke om ein brukar ikkje er banna, gjer eg det slik i toppen av fila:

include ("acp\func.php");
ipban();

func.php ligg eitt nivå over index.php. sqlinfo.php ligg på same nivå som func.php.

 

Kva kan vere feil?

Feilmeldingar:

Warning: main(acp\func.php): failed to open stream: No such file or directory in /home/content/'''/'''/'''/index.php on line 3

 

Warning: main(acp\func.php): failed to open stream: No such file or directory in /home/content/'''/'''/'''/index.php on line 3

 

Warning: main(): Failed opening 'acp\func.php' for inclusion (include_path='.:/usr/local/lib/php') in /home/content'''/''''''/index.php on line 3

 

Fatal error: Call to undefined function: ipban() in /home/content/'''/html/index.php on line 4

 

Lenke til kommentar
Videoannonse
Annonse

<?php

function ipban() {

include "sqlinfo.php";

$connection = mysql_connect($sqlhost, $sqlusername, $sqlpassword);

mysql_select_db("xxx", $connection);

$i = $_SERVER['REMOTE_ADDR'];

$q = "SELECT ip FROM ipban WHERE ip = '$i'";

$q = mysql_query($q);

if (mysql_num_rows($q) >= 1) {

die("Utestengt");

}

else {

return 1;

}

} ?>

Lenke til kommentar

$q = "DELETE FROM banned WHERE ip='$ip' LIMIT 1";

 

Det er lurt a ha det i en annen fil, langt vekk fra index.php. Sann at det ikke er enkelt for hackere a fa tak i det og bare sletter sine egne. Husk a sjekke om brukeren er logget for $q blir utfort.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...