V tomto kódu můžete provést několik vylepšení.
- Vždy
use strictause warningsve vašem kódu. A opravte problémy, které odhalují (většinou deklarování proměnných pomocímypodle 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->newmí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.