web-dev-qa-db-fra.com

Soumettre une vue au lieu de rediriger vers une autre vue

J'ai 2 vues à savoir students et student. La vue students liste tous les étudiants et la vue student affiche les détails de l’étudiant. Ces 2 vues sont accessibles à tous les membres du personnel de l'école pour voir leurs élèves.

Actuellement, j'utilise un lien d'ancrage dans la vue students en passant le student_id comme l'un des arguments de href de la vue student. Le problème ici est si le personnel va simplement à l'URL et change le student_id à un autre numéro que le personnel capable d'afficher les détails des autres étudiants.

Je veux arrêter cela plus facilement, au lieu de vérifier à nouveau dans la base de données si l'élève en question rend compte au personnel connecté.

J'ai pensé à quelque chose à voir avec Joomla form.token et soumettez la première vue en cliquant sur le nom de l'étudiant. La vue suivante permet de valider le jeton et d'afficher tous les détails.

Je ne suis pas sûr que cela ait un sens, mais je pensais que cela me faciliterait la vie au lieu d’écrire plusieurs validations.

2
Malaiselvan

Répondre à ma propre question ... J'aurais dû passer un peu de temps sur Google avant de poser ma question.

Joomla prend en charge l'anti-usurpation CSRF et cela est expliqué dans How_to_add_CSRF_anti-spoofing_to_forms

Depuis que j'utilise la méthode GET, je devrais utiliser ce qui suit pour former le HRF

<?php 
echo JRoute::_( 'index.php?option=com_example&controller=object1&task=save&'. JSession::getFormToken() .'=1' ); 
?>

et dans l'autre page vérifier comme ci-dessous

JSession::checkToken( 'get' ) or die( 'Invalid Token' );
4
Malaiselvan