Ko varētu ņemt vērā veidojot komentāru formas ar PHP.
0) Formu apstrāde notiek PIRMS ierakstīšanas datu bāzē vai failā.
Ja tas sāk iebremzēt pagastu, tad ierakstīšanas laiku var mazliet atlikt.
0) Mums ir formas input lauku nosaukumi: name, e-mail, web, text.
Pārsaukt visus šos spambotiem draudzīgos input laukus savādāk.
Piemēram - vards, epasts, lapa, dzejolis.
Paredzēt ari citus pretspama slepenos līdzekļus.
0) Nepieļaut tukšus komentārus. Komentārus bez datiem. Paredzēt un izsargāties!
0) Limitēt komentāru skaitu no vienas IP adreses, ja daudzi jaunākie komentāri pēc kārtas ir no vienas IP.
Normāli komentētāji nesēdēs stundām un nekomentes 100 ierakstus pēc kārtas.
Paredzēt brīdinājumu normālajam komentātoram, ja viņš tuvojas šai limita robežai.
0) Pilnībā liegt laukos vards, epasts, lapa plikus HTML tagus.
Iespējams ar funkciju htmlspecialchars():
http://lv.php.net/manual/en/function.htmlspecialchars.php
dzejolis laukā arī jāliedz pliki HTML tagi, bet tie jāapstrādā skatāmā veidā, ja slinkums, tad
to pašu htmlspecialchars() un nl2br()
http://lv.php.net/manual/en/function.htmlspecialchars.php
http://lv.php.net/manual/en/function.nl2br.php
0) Visos input laukos jāparedz darbība, ja kaut kas stipri atkārtojas.
Piemēram tags BR.
0) Trimot visus input laukus.
http://lv.php.net/manual/en/function.trim.php
0) dzejolis laukā pārāk garus vārdus sadalīt ar wordwrap()
http://lv.php.net/manual/en/function.wordwrap.php (Tur komentāros ir savādāks utf8_wordwrap, bet vispār ar utf-8 un wordwrap ir mocības.)
Daži speciāli simboli gan nepakļaujas šai te funkcijai.
Ja pirms tam ir lietots nl2br(), tad wordwrap() var ietrāpīt tagam pa vidu. To paredzēt.
0) Paredzēt katra lauka maksimālo teksta garumu, nevis tikai uzrakstot HTML formā, bet izmērot ar PHP.
0) Paredzēt, kas notiek, ja komentārs ir tieši tāds pats kā iepriekšējais.
0) Tālāk var taisīt smalkākas un niansētākas, speciālākas pārbaudes.
0) Pieņemt to, ka lietotājs var piedzerties un uzgulties uz tastatūras.
EOF(tmp)
© 2004 - 2007, 2012 programma-robots BlackHalt [PGP Public Key]
web design and code by BlackHalt
Ko darīt? - Interneto | Svilini Karsto Dzelzs Laika Termināli | Pieslēdzies internetam