Jeg pleide å få derfor mye søppelposten i min postkasse daglig at jeg brukte mer tid stryker som det da jeg tilføyde ny innhold, som vedlikeholder steder, eller start nye steder samlet (typisk historierett). Noe av din website søppelpost er ikke unngåelig, eller, det er unngåelig, men på kostnadene av brukervennligheten og/eller god informasjon blir fanget i “bad stoff” også.
Ingen tvil, hvis du’re alvorlig om vevutvikling du’re som drar skaper og til å påvirke hverandre med former regelmessig. Spesielt med dette nye vevet 2,0 holdninger har hvert…gee wiz, hva’s det ?
CAPTCHA
CAPTCHA er antallet en metode det meste folket bruker til å forhindre søppelpost i dag. Hva er det ?
“a CAPTCHA er en utfordringsresponsprøve som blir brukt på datamaskiner til å sjekke hvis brukeren er menneskelig. En felles type av CAPTCHA som er brukt på websites krever at den besøkende maskinskriver brevene og antallene et fordreit avbilde. Denne metoden er basert på faktum som er vanskelig for datamaskiner til å trekke ut teksten fra avbildet mens det er meget lett for mennesker. ” - captchacreator com
Her’s et par ressurser til skrifttyper slik du’ll kan iverksette den funkjsonaliteten inn i din egene former :
Rømm Data - Forhindrer SQL Injeksjoner
Capcha er usless hvis du’re som lar din form være ubeskyttet fra angrep. Husk til å filtrere postsnorer med addslashes () eller mysql_real_escape_string().
Også ta en titt på disse funksjonene for annen type av kontrollene liknende som kunne være nyttig :
- Htmlspecialchars () - Rømmer de følgende karakterene : &,’,”,>,< ...that is the ampersand, single quote, double quote, less than, and greater than symbols.
- Strip_tags() - Striper ut alle HTMLER og PHP koder fra den gide snoret.
- Htmlentities () - Forvandler ALLE karakterer til deres HTML entitetsekvivalent (dette er et mer fanger all versjon av htmlspecialchars).
- Urlencode () - Koder URL til å passere snorer på et FÅR metode. Som nevnet jeg, FÅR Don’t bruk med former. Dette er nyttig når du’re passere brukerinngangsvariabel grunn andre grunder.
Husk, når de forvandler data som denne bruken av de ovenfor funksjonene, du kan gjøreom det for lesbarhet og utgang ved å bruke av dets reverserer funksjon. Urlencode () har for eksempel urldecode () til å gjøreom detse tiltak slik du kan begynne til å bruke snoret som ville du ha før det koder.
Sjekk Anmodning Metode
Kast et hvis uttalelse omkring din finnesende formprosessor som sjekker til å se hvis data kommer fra den globale posten variabelen. Hvis ikke, da kommer brukeren til din form måten ikke som du utformet at det til å bli brukt.
<? phphvis ( $_TJENER [ ‘REQUEST_METHOD’ ] == ‘POST’ ) {//typisk form bearbeider} ellers {gjenlyd » kan formen ikke bli brukt som det » ;}- ?
> - Download denne koden :
Forandr dette TIL Å FÅ hvis du’re bruk det istedenfor. Men, jeg vil høy anbefaler du aldri bruker den metoden som det er mer usikker.
Sjekk Anmodning Kilde
Du burde også sjekke til å se hvis anmodningen begynner fra din egen tjener. Dette er en meget felles metode av formmisbruk som doesn’t nødvendigvis gjennomsnitt du’ll mottar søppelpost. Hvis du’re tjener får mye sprette e-poster til dets standarde-post du kan ha noen misbruke din sted i denne måten.
<? php$kilde = $_TJENER [ ‘HTTP_HOST’ ] ;//Eller hvis du vil oppdage akkurat domenet som du kan bruke et regulært uttrykk til å filtrere det.$kilde = ereg_replace (»^(www.)?(æ^.å ).æ^.å $” , » \\2" , $_TJENER [ ‘HTTP_HOST’ ] ) ;hvis ( $kilde ! = = » robmalon.com » ) {gjenlyd » kommer du ulovlig til denne skrifttypen » ;} ellers {//typisk form bearbeider}//Referrer også burde være fra din egent domene…likewise, hvis der ikke er noen henvisning da brukeren åpenbart isnt som bruker din form riktig (slik vi dont må kontrollere for).//Note: stristr () letinger for første forekomsten av en snor innenfor enda en snors.hvis ( stristr ( getenv (»HTTP_REFERER » ) , $kilde ) ) {//typisk form bearbeider} ellers {gjenlyd » kommer du ulovlig til denne skrifttypen » ;}- ?
> - Download denne koden :
Bruk Regulære Uttrykk For Data Validation
Jeg liker sjekke data som bruker preg_match (eller noe av de regulære uttrykkene funksjonene). Denne metoden dreper mye fugl med en stein. Hvorfor skriver separate funksjoner til å sjekke hvis en snor er tom, da enda et hvis det tillater antall, og enda et hvis det tillater alfakarakterer, og enda et til spesifikk feltlengde, og enda et…you får punktet.
hvis (! preg_match_match ({5.15}$/”, $kaller)) $feil =. “<li klasse = Ø”errorsø”>Navnefeltet kan bare inneholde brev og antall (ingen å skille) og kan bare være opp til 15 karakterer lang.</li>”;
I preg_match sjekker jeg at navnefeltet bare inneholder alfanumerisk verdier (tilfelle ufølsom) og trenger til å være minst 5 til 15 karakterer i lengde. Hvis du Don’t møtes er den spesifikasjonen passende tekst tilføyd til $feil.
Bruk “ævariableå Ædotåæequalså Ætextå” i denne moten tillater meg til å beholde en pågående variabel som jeg’m tilføye til. Jeg kan da sjekke til å se hvis $feil inneholder noen data før min skrifttype gjør noen signifikante forespørsel. Hvis det er feil som du kan spytte dem ut ved gjenlyding $feil og spør brukeren til å rette dem. Jeg bruker da CSS til å formgi mine feil som du kan se med klasse = Ø”errorsø”.
Regulære uttrykk har ulydig en lærende kurve på dem men de er en av de beste redskapene som kan hjelpe forenkler din liv i forskjellige situasjoner. Jeg’ll drar inn i mer detalj om dem ned veien men foreløpig du kan ville kjøpe en bok eller gjør noe Googling.
Den Ikke--Tekniske Rekapitulasjonen
-Iverksetter en CAPTCHA skrifttype.
-Flukt hogger (og annen dårlig karakterer).
-Kontroll til å se hvis data kommer til din form som bruker den riktige metoden.
-Kontroll til å se hvis anmodningen begynner fra din egen tjener.
-Kontrolldata bruke et regulært uttrykk.
Dette er akkurat tuppen av isfjellet hva jeg fortelle kan du om søppelpost for. At hvorfor jeg’ve bestemte til å seg lage en miniserie av. Over det neste parukene vil jeg føre du mer spesifiserte måter som jeg behandler søppelpost. Kommenter under eller sendee-post meg om din egen søppelpost forebyggende metoder. Hvis det er et nytt eller enestående teknikk som jeg vil postere det i en fremtidig blogg sammen med et ledd som er bak til din blogg. Akkurat skriv i kommentarene under og inkluder din URL i website feltet.






































Det forekom akkurat til meg…setting opp de hvis uttalelser med et dør () uttalelse kunne være lett for en kvikk og skitten metode. Hvilken jeg’m sikker de fleste av dere minst foreløpig ville ville at en quickfix akkurat til å kaste i. Beholder at i sinn…something som dette :
hvis ($_SERVERÆ «REQUEST_METHOD»] ! = = «POST») { dør (kan ”the form ikke bli brukt som det”); }
Du kan anbringe at hvor som helst på å begynne av en skrifttype slik det kan tre i kraft uten seg til å bekymre over finnes koder for mye.