Avatar billede dm-bm Nybegynder
15. maj 2004 - 12:04 Der er 13 kommentarer og
1 løsning

Spær for indlæg via IP eller cookie.

Jeg har en såkaldt tagwall på en hjemmeside. Jeg har prøvet at spørge før, men finder ikke rigtig nogen hjælp. Er der en garvet PHP programmør der kan hjælpe mig med at få spærret for indlæg fra en IP, cookie eller noget så jeg kan undgå spam af tagwall?
Jeg har et stykke kode lavet i dreamweaver mx det gerne skulle flettes ind i. Sig endelig til hvis kode er nødvendigt.
Jeg kan ikke forestille mig at det kan være den helt store opgave for en garvet php kender. Er der nogen derude der vil afsætte en smule tid til lige at hjælpe mig. :)
Avatar billede Syska Mester
15. maj 2004 - 12:14 #1
Hvis du slet ikke kan PHP og vil have en til at lave det for dig, så smid spm i Opgaver da det slet ikke hører hjemme her....

Har du da et seriøst problem med spam af tagwall, kan du jo når de poster en besked, bare spære for at den IP kan poste og så kun læse.....

my 2 cents
Avatar billede dm-bm Nybegynder
15. maj 2004 - 12:22 #2
Det er det eneste jeg vil have lavet... spærret for en ip i f.eks. 1 døgn.
Jeg skal ikke have lavet opgaven, men vide hvordan scriptet, mysql osv skal se ud ud fra den kode jeg i forvejen har. Det er bare et spørgsmål om hjælp som så mange andre spørgsmål.
Tidligere svar på et spørgsmål i samme stil var et script som jeg ikke kunne få flettet sammen med min kode. Jeg spurgte da om hjælp til at flette det sammen, men der kom ingen svar.
Avatar billede dm-bm Nybegynder
15. maj 2004 - 12:25 #3
Avatar billede dm-bm Nybegynder
15. maj 2004 - 12:26 #4
Da siden ikke er offentlig gjort endnu er det ikke et seriøst problem. Men det er til en Counter-Strike klan og jeg er næsten overbevist om at der nok skal blive nogle forsøg på spam.
Avatar billede olebole Juniormester
15. maj 2004 - 15:13 #5
<ole>

Hvis du ikke kunne integrere koden i det andet spm, tror jeg, du griber problemet lidt forkert an. Jeg ville mene, du skulle prøve at lære noget mere PHP/MySQL - så er det ikke så svært.
Til gengæld er det - som du oplevede i det andet spm - svært at hjælpe, når du ikke har et grundlæggende kendskab til PHP/MySQL. Jeg kan heller ikke forklare dig, hvordan du skal justere din bils bremser, hvis ikke du ved, hvad en topnøgle er.

Tag det ikke som personlig kritik - men det er nok det bedste jeg kan gøre for at hjælpe dig  :)

/mvh
</bole>
Avatar billede danielhep Nybegynder
26. maj 2004 - 23:54 #6
database design:

CREATE TABLE 'restricted' (
  'id' int(11) NOT NULL auto_increment,
  'ip_address' varchar(20) NOT NULL default '',
  PRIMARY KEY  ('id')
) TYPE=MyISAM;

PHP koden:
        $ip_check =    mysql_query("SELECT ip_address FROM restricted WHERE ip_address='".$this->ip."'")or die("Query failed : " . mysql_error());
        if(mysql_num_rows($ip_check)!=0) {
            header("Location:no_permission.php");
            exit;
        }
Avatar billede danielhep Nybegynder
26. maj 2004 - 23:56 #7
$this->ip skal der ikke stå.  Glemte lige at erstatte den med 127.0.0.1

$this->ip skal indeholde den besøgenes ip.
Avatar billede thesurfer Nybegynder
26. maj 2004 - 23:58 #8
Det virker så kun på faste ip'er.. mange har dynamiske ip.. dem kan du så ikke spærrer for..

En alternativ måde, er at man skal logge ind (med brugernavn og kode), før man kan skrive indlæg..
Avatar billede dm-bm Nybegynder
09. juni 2004 - 17:25 #9
Jeg vil prøve at rode lidt med det danielhep

Det gør nu ikke så meget med om den er dynamisk. Den skifter jo ikke hele tiden. Jeg vil bare have bremset for at de ikke lige laver 100 indlæg på een gang. Hvis de skriver lidt for ofte kan jeg bare slette indlægget. Godt nok skal de gøre sig lidt besvær allerede, for de skal både skrive navn, email og besked hver gang. Og trykker de tilbage så er al teksten slettet så de skal skrive det hele igen i alle felterne.


olebole > Jeg ved godt hvad du mener. Jeg ved godt jeg burde lære lidt mere omkring koder. Jeg har jo det fine dreamweaver til at gøre det for mig. Man kan godt hekle nogle udemærkede sider sammen der, men der vil altid være nogle funktioner der ikke findes i de programmer.

Tak for hjælpen. Jeg vender tilbage med svar og point hvis jeg kan få det til at fungrere. ;)
Avatar billede thesurfer Nybegynder
09. juni 2004 - 17:33 #10
dm-bm> Ang "Godt nok skal de gøre sig lidt besvær allerede, for de skal både skrive navn, email og besked hver gang. Og trykker de tilbage så er al teksten slettet så de skal skrive det hele igen i alle felterne.":

Dette er ikke korrekt. Det gør Internet Explorer (og vist nok også Mozilla FireFox) godt nok, men det gør browseren Opera ( www.opera.com ) f.eks. ikke.

En god browser husker hvad man har skrevet, hvis man vil rette en fejl eller to.
Avatar billede dm-bm Nybegynder
24. juni 2004 - 22:49 #11
thesurfer> Det drejer sig jo nu engang også om at få gjort så de ikke kan poste mere end 1 gang i døgnet eller lign.
Avatar billede thesurfer Nybegynder
26. juni 2004 - 12:42 #12
Hvis det er 1 gang i døgnet, burde det ikke være så svært.
Du opretter et felt i databasen, der f.eks.e hedder "lasttime". Dette felt er af type "dato".

Når formen submittes, og skal til at gemmes i databasen, gør du sådan her:

- hent sidst felt med ip/brugernavnet

- hvis "nuværende tispunkt" er større end "lasttime + 24 timer"
--- gem i databasen
- ellers
--- udskriv "du må kun skrive 1 gang i døgnet
- hvis_slut

Nu kan jeg ikke programmere i PHP (bruger ASP), så du må spørger php-folken om det :-)
Men det burde ikke være så svært..
Avatar billede dm-bm Nybegynder
09. august 2004 - 12:10 #13
Ja, jeg har ikke fået det til at virke, men jeg må være lidt kreativ og finde på noget med DW selv. Må hellere se at få lukket tråden :D
Avatar billede dm-bm Nybegynder
09. august 2004 - 12:11 #14
Tak for svarene, men resultat har jeg ikke fået :o/
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester