Bonjour, je suis une débutante en php, avant j'utilisais php5.1.7 avec jelix 1.1 comme framework, voici mon code et ça marchait parfaitement (suppression de donnée après sélection d'une ligne):
dans table.tpl:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 $(document).ready(function() {$("#infosSuppr").attr("style","display:none"); $("#suppr").click(function() {var id_table = ""; var compteur= 0; var ligneselectionnee =""; $(".Tb").find ('tr').each (function () {var classe = $(this).attr("class"); if(classe) {if(classe.indexOf("vert") != -1) {id_table = $(this).attr("id_table"); if(ligneselectionnee == "") {ligneselectionnee = id_table; } else {igneselectionnee+= ','+id_table; } compteur++; } } }); if(compteur> 0) {$("#infosSuppr").attr("style","display:block"); $("#supprConfirmer").click(function() {$("#infosSuppr").attr("style","display:none"); var urlSupprimer = "{/literal}{jurl 'monmodule~classic:supprTable'}{literal}"; urlSupprimer+="&ligneselectionnee="+ligneselectionnee; urlSupprimer=urlSupprimer.replace("amp;",""); window.location.replace(urlSupprimer); }); $("#annuler").click(function() {$ligneselectionnee=""; $("#infosSuppr").attr("style","display:none"); }); } }); });
Code:
1
2
3
4
5
6
7 <a href="#" class="suppr" id="suppr">Supprimer</a> <!--Confirmation--> <div style="display:none" id="infosSuppr"> Etes vous sur de supprimer cet enregistrement sur cette ligne? <a href="#" id="annuler">Annuler</a> <a href="#" id="supprConfirm">OK</a> </div>
dans table.class.php:
dans table.classic.php:Code:
1
2
3
4
5
6
7
8
9
10
11
12 <?php class table {static function supprTable($tDonnee) {$oConnexion = jDb::getConnection (); $zRequete ="delete from table where id_table in (".$tDonnee['ligneselectionnee'].")"; if($oConnexion->exec($zRequete )) return true; else return false; } } ?>
Maintenant, j'utilise php5.4.3 et jelix 1.5.2 et ce code ne marche plus, dans table.classic.php, j'arrive plus à récupérer les données en utilisant $tDonnee=$this->params();.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <? class tableCtrl extends jController {public $pluginParams = array( '*'=>array('auth.required'=>true) ); function supprTable() {$oReponse=$this->getResponse('redirect'); $tDonnee=$this->params(); jClasses::inc('monmodule~table'); if(table::supprTable($tDonnee)) $oReponse->action = 'monmodule~table:listeTable'; return $oReponse; } } ?>
Car j'ai vérifié si le code suivant fonctionne:
//Pour que je sache que j'ai vraiment appuyé #suppr
et ça ne marche pas, il affiche toujours falseCode:
1
2
3
4 if(isset($tData['suppr'])) print_r('true'); else print_r('false');
Je ne sais pas ce qui ne va pas mais avant ça marchait. Je ne sais pas ce qu'il faut modifier, ça fait des jours que je cherche la solution mais j'y arrive pas. Alors, si vous pouvez m'aider, je serrais très reconnaissante.