Pourquoi tu ne charges pas le helper form pour l'utiliser dans ta vue ? Si tu mets le csrf_protection
a true dans ton fichier de config le helper form_open() ajoutera automatiquement la protection csrf.
Ensuite tu pourrais ajouter quelques filtres à tes régles de validation, a commencé par trim.
Pourquoi ne pas utiliser les shorts tag dans tes vues avec php, autant profiter qu'il soit un langage de template (même si il fait mal le job) pour rendre le code moins lourd?
Je trouve
| <?= form_label('Sujet', 'subject'); ?>
<?= form_input($subjet, set_value('subject')); ?>
|
beaucoup plus clair que
| <label for="subject">Sujet</label>
<input type="text" id="subject" name="subject" value="<?php echo set_value("subject"); ?>" class="form-control" placeholder="Feedback, demande d'informations..."/>
|
Il te suffit de définir tes champs et leurs attributs (id, class, placeholder etc) dans un fichier config personnalisé. De cette façon ton code est beaucoup moins lourd dans la vue et si tu veux modifier une class ou un id ouquoi que ce soit tu as juste à modifier ton fichier de configuration.
D'ailleurs je trouve bizarre que CI n'ai pas évolué sur ce point. La gestion des formulaires est vraiment horrible sur ce framework, si on compare a NetteFramework par exemple ou la gestion des formulaires est un vrai bonheur.
Concernant tes régles d'ailleurs j'aurais tendance à faire comme pour les formulaires et de stocker tout ça dans un gros tableau dans un fichier config dédié à ça, ça te permet de transformer tes 30 lignes en une seul, il te suffira de charger le fichier dans le constructeur et idem pour l'update t'as pas besoin de chercher, tu sais qu'il est dans le fichier config si un jour tu veux modifier une régle.
Je dis peut-être une bêtise mais tu ne peux pas ajouter xss_clean dans tes régles de validation ? Il me semble que c'était possible à l'époque.