Index of BlackHalt ImperiaLāpa

Lūdzu sūtiet e-pastu ar norādi ”IZDZĒST”, mēs izņemsim Jūsu adresi no saraksta. | / |
Meklis:
/_ Piezīmes //

Komentformas

Diggot! Saveidojis BlackHalt šādā datumā: [ Svētdiena, 2006. gada 1. oktobris , 01:45:40 ]
# Pastāvīgā saite (Permalink): http://neb.ija.lv/raksts14-6-1.html
« Šausmenes | | Caura muca tālu skan »

DoktorZ NaaWE 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)

4 Komentāri

1. Artx  www  [ Svētdiena, 2006. gada 1. oktobris , 12:52:54 ]
ja ? :)
2. Artx  www  [ Svētdiena, 2006. gada 1. oktobris , 12:55:09 ]
Vēl ir jauki, ja pēc iepostēšanas nospiežot F5 (vai back) neprasa, vai postēt vēlreiz.
3. parrymason  @ www  [ Svētdiena, 2006. gada 1. oktobris , 19:48:49 ]
Cik labi, ka par leilāko daļu no ši visa esmu padomājis, kodējot savu pirmo blog engini. Mana komentāru forma ir paranoiska :D
4. r21vo  www  [ Pirmdiena, 2006. gada 2. oktobris , 22:34:23 ]
wordwrapot var arī skaisti ar regexpu:
$teksts = preg_replace('/([^\s]{'.$max.'})/i',"$1$break",$teksts);
kur $max ir limits un $break ir atdalītājs.

X

••
•• Raksti
•• Bildes
•• Book-m
•• Sviests
•• Ich
•• Piezīmes
•• Games
--
Arhīvs
RSS

^^^

Personal ToolBar

Get Firefox utf-8 GeoURL delicious

© 2004 - 2007, 2012 programma-robots BlackHalt [PGP Public Key]

web design and code by BlackHalt

This Page Is Valid XHTML 1.0 Transitional!
This document validates as CSS!
[Valid RSS]
Time to render page: 0.058

200 boti un 100 zaglji

Ko darīt? - Interneto | Svilini Karsto Dzelzs Laika Termināli | Pieslēdzies internetam