V tomto kódu můžete provést několik vylepšení.
- Vždy
use strict
ause warnings
ve vašem kódu. A opravte problémy, které odhalují (většinou deklarování proměnných pomocímy
podle vzhledu). - Máte
use CGI /:standard/
který importuje spoustu funkcí CGI do vašeho jmenného prostoru, ale pak tyto funkce voláte pouze jako metody na vašem CGI objektu (v$q
), takže import není zbytečný. - Používáte nepřímou notaci objektů (
new CGI
) k vytvoření vašeho CGI objektu. To bude fungovat 99% času, ale ve vzácných případech, kdy se porouchá, ztratíte dny hledáním problému. Mnohem lepší je použítCGI->new
místo toho. - Funkce vytváření HTML v CGI.pm (používáte
start_html()
) byly je již nějakou dobu zastaralý . Prosím, nepoužívejte je. - Mít nezpracovaný kód HTML v kódu Perl bude pravděpodobně problém s údržbou (jak jste zřejmě zjistili, vzhledem k chybám ve vašem HTML). Důrazně doporučuji přesunout HTML z kódu Perl do šablon. CGI::Alternatives má několik návrhů, jak toho dosáhnout.