IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Liste sortable + mise à jour Bdd // POO MVC


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 44
    Points : 20
    Points
    20
    Par défaut Liste sortable + mise à jour Bdd // POO MVC
    Bonjour,

    J'ai créé une liste sortable avec jQuery via un drag'n'drop qui fonctionne parfaitement.
    Maintenant, j'aimerais que les modifications soient enregistrées dans la bdd!

    Et c'est là que je bloque ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public function ordonnerMenu($idMenu, $ordreMenu) {
            $sql = "UPDATE menu 
                    SET ordre='$ordreMenu'
                    WHERE id_menu='$idMenu'";
            $res = $this->executerRequete($sql);
        }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public function ordonnerMenu() {
            $idMenu = $this->requete->getParametre("idMenu");
            $ordreMenu = $this->requete->getParametre("ordreMenu");
     
            // Modification de l'ordre du menu
            $this->menu->ordonnerMenu($idMenu, $ordreMenu);
     
            // Exécution de l'action par défaut pour actualiser le menu
            $this->executerAction("menuGestionMenuPages");
        }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    <form method='post' action='eaproduits/ordonnerMenu' class='ordreMenu'>
        <div class='form-group'>
            <dl id='sortable'>";
     
                <?php 
                foreach ($array2 as $row) {
                $idMenu2 = $row['idMenu'];
                $idParentMenu2 = $row['idParent'];
                $libelleMenu2 = $row['libelle'];
                $ordreMenu2 = $row['ordre'];
     
                if ($idParentMenu2 == $idMenu1 ) {
                ?>
                <dt>
                <div id='menu-wrapper'> 
                    <div id='menu-item'>
                        <span class='$icon_ordre'></span>
                    </div>
                    <p id='menu-text'>
                        <?= $libelleMenu2 ?>
                    </p>     
                    <p id='menu-ordre'>
                        <?= $ordreMenu2 ?>
                        <input type='hidden' name='idMenu' value="<?= $idMenu2 ?>">
                        <input type='hidden' name='ordreMenu' value="<?= $ordreMenu2 ?>">    
                    </p>
                </div>   
                </dt> 
                <?php }} ?>
            </dl>
        </div>
     
        <div class='form-button'>
            <button type='submit' class='btn btn-dark'> Mettre à jour</button>
        </div>
    </form>
    J'ai essayé de sérialiser le nouvel ordre via Javascript, mais je n'y arrive pas!

    Quelqu'un saurait-il comment faire?

    Merci,

  2. #2
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 44
    Points : 20
    Points
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    $(document).ready(function() {
        for (j=0;j<1000;j++) {
            $( "#sortable" + j ).sortable({
                placeholder: "highlight",
                revert: true,
                tolerance: "pointer",
                update: function() { 
                    var newOrder = $('#sortable' + j).sortable('serialize');
                    alert(newOrder);
                }
            });
            $( "#sortable" + j ).disableSelection();
        }
    });
    En mettant ce bout de code, j'ai un message [object Object] au lieu d'avoir la liste des item_ avec le nouvel ordre !!??

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2015
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2015
    Messages : 44
    Points : 20
    Points
    20
    Par défaut
    Apparement cela veut dire qu'il n'arrive pas à matcher mon id (donc le probleme vient de mon incrémentation !!!)

Discussions similaires

  1. Réponses: 7
    Dernier message: 11/04/2007, 14h21
  2. Mise à jour BDD sans perdre les données
    Par penchu dans le forum Accès aux données
    Réponses: 4
    Dernier message: 07/02/2007, 11h21
  3. PreparedStatements et mise à jour BDD
    Par florentB dans le forum JDBC
    Réponses: 2
    Dernier message: 17/01/2007, 14h30
  4. Réponses: 2
    Dernier message: 08/01/2007, 08h36
  5. Module de Mise à jour BDD access via un site sécurisé
    Par Askarod dans le forum Bases de données
    Réponses: 3
    Dernier message: 08/12/2005, 08h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo