Ci sono alcuni miglioramenti che puoi apportare a questo codice.
- Chiedi sempre di
use strict
euse warnings
nel tuo codice E risolvi i problemi che rivelano (per lo più dichiarando variabili conmy
a quanto pare). - Hai
use CGI /:standard/
che importa un carico di funzioni CGI nel tuo spazio dei nomi, ma poi chiami quelle funzioni solo come metodi sul tuo oggetto CGI (in$q
) in modo che l'importazione non sia necessaria. - Usi la notazione indiretta dell'oggetto (
new CGI
) per creare il tuo oggetto CGI. Funzionerà il 99% delle volte, ma nei rari casi in cui si rompe perderai giorni a rintracciare il problema. Molto meglio usareCGI->new
invece. - Le funzioni di creazione HTML in CGI.pm (usa
start_html()
) sono stati obsoleto da un po' di tempo . Si prega di non usarli. - Avere HTML grezzo nel codice Perl potrebbe essere un problema di manutenzione (come sembra che tu abbia scoperto, dati gli errori nel tuo HTML). Consiglio vivamente di spostare il tuo HTML fuori dal tuo codice Perl e nei modelli. CGI::Alternative ha alcuni suggerimenti su come farlo.