Prendevo così molta carne suina in scatola nella mia cassetta postale di tutti i giorni che spendevo più tempo lo cancellando poi aggiungevo il nuovo contenuto, mantenendo i luoghi, o cominciando i nuovi luoghi combinati (la destra di storia tipica). Alcuni della sua carne suina in scatola di sito web non è evitabile, o, è evitabile, ma al costo di utilizzabilità e/o alle buone informazioni essendo preso nel “bad le cose” come bene.
Senza dubbio, se lei’re serio dello sviluppo di tela lei’re intende creare ed interagire con le forme regolarmente. Soprattutto con questa nuova tela 2,0 atteggiamento ogni ha…gee il wiz, ciò che’s ciò?
CAPTCHA
CAPTCHA è il numero un metodo la maggior parte delle persone usano per evitare la carne suina in scatola oggi. Che l'è?
“A CAPTCHA è un test di risposta di sfida usato sui computer per controllare se l'operatore è umano. Un tipo comune di CAPTCHA che è usato sui siti web richiede che il visitatore batta a macchina le lettere ed i numeri di un'immagine alterata. Questo metodo è basato sul fatto che è difficile per i computer di estrarre il testo dall'immagine mentre è molto facile per gli esseri umani. ” - il captchacreator com
Qui’s qualche risorse ai manoscritti così lei’ll può compiere quella funzionalità nelle sue proprie forme:
Fuggire i Dati - Evita SQL Iniezioni
Il Capcha è l'usless se lei’re lasciando la sua forma non protetta dall'attacco. Ricordare per filtrare le cordicelle di palo con l'addslashes () o mysql_real_escape_string().
Anche dare un'occhiata a queste funzioni per l'altro tipo simile di assegni che potrebbero essere utili:
- L'htmlspecialchars () - Fugge i caratteri seguenti: &,’,”,>,< ...that is the ampersand, single quote, double quote, less than, and greater than symbols.
- Lo strip_tags() - i Nastri fuori da tutto l'HTML e PHP codificano dalla cordicella data.
- L'htmlentities () - Converte TUTTI i caratteri al loro equivalente di entità di HTML (questo è una più presa tutta la versione di htmlspecialchars).
- L'urlencode () - Codifica l'URL per passare le cordicelle su un PRENDE il metodo. Come ho menzionato, il docente universitario’t l'uso PRENDE con le forme. Questo è utile quando lei’re passando le variabili di entrata di operatore per le altre ragioni.
Ricordare, una volta lei converte dei dati come quest'uno di usare delle sopra funzioni, lei può disfarlo per la leggibilità e per l'uscita usando la sua funzione di retromarcia. L'urlencode () per esempio ha l'urldecode () di disfare le sue azioni così lei può iniziare a usare la cordicella come lei avrebbe prima della codifica.
Controllare Metodo di Richiesta
Lanciare un se la dichiarazione intorno il suo elaboratore di forma esistente che controlla vedere se i dati viene dalla variabile di palo globale. Se no, poi l'operatore non accede alla sua forma la maniera lei l'ha disegnato essere usato.
<? phpse ( $_il SERVER [ ‘REQUEST_METHOD’ ] == ‘POST’ ) {//la forma tipica elabora} altro {risuonare " La forma non può essere usata come ciò " ;}- ?
> - Scaricare questo codice:
Cambiare questo per PRENDERE se lei’re usando che invece. Comunque, farei alto la raccomanda non usa mai quel metodo come è più insicuro.
Controllare Fonte di Richiesta
Lei dovrebbe controllare anche per vedere se la richiesta proviene dal suo proprio server. Questo è un metodo molto comune di abuso di forma che doesn’t necessariamente il mezzo lei’ll riceve la carne suina in scatola. Se lei’re il server prende molte email rimbalzate alla sua email predefinita lei potrebbe avere qualcuno abusando il suo luogo in questo modo.
<? php$la fonte = $_il SERVER [ ‘HTTP_HOST’ ] ;//O se lei vuole rilevare appena il dominio lei può usare un'espressione regolare per filtrarlo.$la fonte = ereg_replace ("^(www.)?([^.] ).[^.] $” , " \\2" , $_Il SERVER [ ‘HTTP_HOST’ ] ) ;se ( $la fonte ! = = " il robmalon.com " ) {risuonare " lei illegalmente accede a questo manoscritto " ;} altro {//la forma tipica elabora}//Il referrer dovrebbe essere anche dal suo proprio dominio…Likewise, se non ci è riferimento poi l'operatore ovviamente isnt usando la sua forma correttamente (così abbiamo indossato deve controllare per ciò).//Note: lo stristr () le ricerche per il primo evento di una cordicella in un'altra cordicella.se ( di getenv di ( di stristr di ("HTTP_REFERER " ) , $la fonte ) ) {//la forma tipica elabora} altro {risuonare " lei illegalmente accede a questo manoscritto " ;}- ?
> - Scaricare questo codice:
Usare Espressioni Regolari Per Validation di Dati
Amo controllare i dati usando preg_match (o qualunque delle funzioni di espressione regolari). Questo metodo uccide molti uccelli con una pietra. Perché scrive le funzioni separate per controllare se una cordicella è vuota, poi un altro se consente dei numeri, ed un altro se consente i caratteri di alfa, ed un altro alla lunghezza di campo specifica, ed un altro…you cape.
se (! preg_match_il match ({5.15}$/”, $il nome)) $l'errore =. “<la classe di li = \”errors\”>Il campo di Nome può contenere solo le lettere ed i numeri (nessuni spazi) e può essere all'altezza di solo 15 caratteri lunghi.</li>”;
Nel preg_match controllo che il campo di nome contiene solo dei valori alfanumerici (imballa insensibile) ed i bisogni di essere almeno 5 a 15 caratteri nella lunghezza. Se lei indossa’t incontra quella descrizione appropria del testo è aggiunto a $l'errore.
Usando “[variable] [dot][equals] [text]” in questa moda consente che io tenere una variabile continua che io’m l'aggiunta a. Posso controllare poi per vedere se $l'errore contiene qualunque dati prima che il mio manoscritto fa qualunque quesiti significativi. Se ci sono degli errori lei può sputarli risuonando $l'errore e chiede all'operatore di correggerli. Uso poi CSS allo stile i miei errori che lei può vedere con la classe = \”errors\”.
Le espressioni regolari hanno competitivamente una curva di cultura su loro ma sono uno dei migliori attrezzi che possono aiutare semplifica la sua vita in una varietà di situazioni. Io’ll va in più dettaglio di loro posa la strada ma per ora lei potrebbe volere comprare un libro o fa del Googling.
Il Riassunto non Tecnico
-Compie un manoscritto di CAPTCHA.
-La fuga taglia (e gli altri caratteri cattivi).
-L'assegno di vedere se i dati viene alla sua forma usando il metodo corretto.
-L'assegno di vedere se la richiesta proviene dal suo proprio server.
-I dati di assegno usando un'espressione regolare.
Questo è appena la la punta dell'iceberg per ciò che posso dirla della carne suina in scatola. Ciò perché io’ve ha deciso di fare un mini la serie di esso. Sopra le prossime settimane di coppia la porterò più maniere dettagliate tratto la carne suina in scatola. Commentare di sotto o l'email me della sua propria carne suina in scatola i suoi metodi preventivi. Se è una tecnica nuova o unica l'affiggerò in un blog di futuro con un dorso di maglia al suo blog. Appena scrivere nei commenti di sotto ed includere il suo URL nel campo di sito web.






































È accaduto appena a me…setting su quei se le dichiarazioni con un muore () la dichiarazione potrebbe essere più facile per un per metodo veloce e sporco. Quale io’m sicuro la maggior parte di voi almeno per vorrebbe ora un quickfix appena gettare in. Tenere che a mente…Something come questo:
se ($_SERVER[ "REQUEST_METHOD"]! = = IL "PALO") { muore (”The la forma non può essere usata come ciò”); }
Lei può mettere che dovunque all'inizio di un manoscritto per esso portare l'effetto senza preoccupare di esistere codifica troppo.