09/07/2013, 23:30:33
Il existe déjà des modules pour ce que tu veux faire il me semble... enfin pour répondre technique à ta question :
non dans mon tuto on ne met pas tout dans monmodule.module.php et encore heureux car comme tu dis c'est pas très clair :lol:
on fonctionne par norme.
Listons un peu tes actions possible :
list (mettons que c'est l'action par défaut)
détail
modification
suppression
ajout
et éventuellement réinit d'un mdp ce qui revient à une modif avec un formulaire un peu plus sexy.
Tu devrais donc avoir
action.defaultadmin.php => par défault la liste
action.detail.php
action.modification.php
action.suppression.php
action.ajout.php
et ...
action.save_modification.php
action.save_ajout.php
(si tu suis ma logique : les premiers modif/ajout seront des forms, les seconds valideront le SQL)
Ensuite exemple avec la suppression dans action.suppression.php
et voilà comment on navigue d'action en action en passant les paramètres nécessaire et en conservant son code propre
Note :
à la place de ce que tu utilises
Toute la doc : http://apidoc.cmsmadesimple.org/CMS/CMSModule.html
non dans mon tuto on ne met pas tout dans monmodule.module.php et encore heureux car comme tu dis c'est pas très clair :lol:
on fonctionne par norme.
Listons un peu tes actions possible :
list (mettons que c'est l'action par défaut)
détail
modification
suppression
ajout
et éventuellement réinit d'un mdp ce qui revient à une modif avec un formulaire un peu plus sexy.
Tu devrais donc avoir
action.defaultadmin.php => par défault la liste
action.detail.php
action.modification.php
action.suppression.php
action.ajout.php
et ...
action.save_modification.php
action.save_ajout.php
(si tu suis ma logique : les premiers modif/ajout seront des forms, les seconds valideront le SQL)
Ensuite exemple avec la suppression dans action.suppression.php
Code :
[== Indéfini ==]
<?php
if (!function_exists('cmsms')) exit;
$db=cmsms()->GetDb();
//On récupère le paramètre. /!\ id est un terme réservé donc on choisit autre chose
$sid = $params['sid'];
//Si tu as suivit mes tuto tu devrais comprendre ceci : c'est la seule façon correcte et sécurisée de procéder.
$sql = "DELETE FROM matable WHERE identifiant = ?";
if(!empty($sid)){
if($db->Execute($sql, array($sid)) === TRUE){
$params_retour = array("msg"=>"Les données ont été correctement effacées");
} else {
$params_retour = array("error"=>"Erreur lors de la suppression des données");
}
} else {
$params_retour = array("error"=>"identifiant vide");
}
//Dans tous les cas on revient sur la page d'admin par défaut avec $params_retour en paramètre.
$this->Redirect($id, 'defaultadmin', '', $params_retour);
?>
et voilà comment on navigue d'action en action en passant les paramètres nécessaire et en conservant son code propre

Note :
Code :
[== Indéfini ==]
if (!function_exists('cmsms')) exit;
$db=cmsms()->GetDb();
à la place de ce que tu utilises

Toute la doc : http://apidoc.cmsmadesimple.org/CMS/CMSModule.html