Bonsoir à tous,
tout d’abord j’espère poster au bon endroit (ce forum est très complet mais très vaste aussi !!!!! )

voila je tente de faire un petit programme de gestion de lits ( pour le fun mais finalement c'est pas si drôle....) avec du drag& drop. j'ai donc fait plusieurs <li> qui sont draggable d'une <div> à l'autre. cependant j'aimerais qu'au drop ( donc lorsqu'on à fini l'action ) de mes <li> je puisse traiter l’état de mes <li>.
je pensais donc tout bêtement faire un header Location vers ma page de traitement qui contiendrait ma requête sql de changement d'état.... petit problème : ou dois faire mon header location ( oui je sais j'ai au drop......mais ou ?????)

donc si vous avez la moindre piste qui puisse m'aider merci d'avance.
voici mon code :

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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?php
session_start();
echo $_SESSION['uf'].'<br />';
?><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Accueil service</title>
 
<!--Mise en place du javascript pour le drag and drop -->
<script type="text/javascript"> 
            //<![CDATA[ 
            if('draggable' in document.createElement('span')) { 
            document.write('Drag &amp; drop supporté'); 
            } 
            else{ 
            document.write('Drag &amp; drop non supporté'); 
            } 
 
            function OnDragStart(target, evt){
                evt.dataTransfer.setData('IdElement', target.id);
            }
            function OnDropTarget(target, evt){
                var id = evt.dataTransfer.getData('IdElement');
                target.appendChild(document.getElementById(id));
                evt.preventDefault();
            }
            //]]> 
</script>
 
<!-- connexion à la base de données -->
<?php
include ('includes/connect.inc.php');
?>
 
<link rel="stylesheet" href="style.css" type="text/css" media="screen" /> 
</head>
 
<body>
<section id="main">
<p>
<h1>Gestion des lit du service</h1>
</p>
 
<div class="nonDispo" ondragover="return false" ondrop="OnDropTarget(this, event);">
<p>
<h3 class="titre">Liste des chambres occupées</h3>
</p>
 
<?php
//on recupere les données concernant les chambres occupées du services.
$sql=$bdd->prepare('SELECT * from chambres where uf_service = ? AND etat = ?');
$sql->execute(array($_SESSION['uf'], 'indisponible'));
 
while ($donnees = $sql->fetch())
{
    if( !isset($donnees['id']) || $donnees['etat']!='indisponible') 
    {
        echo 'Toute les chambres du service sont disponible';
    }
    else
    {
        $etat=$donnees['etat'];
        $numero_chambre=$donnees['numero_chambre'];
        $id_chambre=$donnees['id'];
?>
 
<ul>
<li id="divDragDrop<?php echo $id_chambre; ?> " class="occupee" draggable="true" ondragstart="OnDragStart(this, event);">Chambre N° : <?php echo $numero_chambre; ?></li>
</ul>
 
<?php
}
}
//on termine la requete
$sql->closeCursor();
?>
</div><!--fermeture du premier bloc-->
 
<div class="disponible" ondragover="return false" ondrop="OnDropTarget(this, event);"> 
<p>
<h3 class="titre">Liste des chambres disponnibles</h3>
</p>
 
<?php
//on récupére les données concernant les chambres disponnibles du service
$sql=$bdd->prepare('SELECT * from chambres where uf_service = ? AND etat = ?');
$sql->execute(array($_SESSION['uf'], 'disponible'));
 
while ($donnees = $sql->fetch())
{
    if( !isset($donnees['id']) || $donnees['etat']!='disponible')
    {
        echo 'Il n\'y a pas de chambres de disponnible';
    }
    else
    {
        $etat=$donnees['etat'];
        $numero_chambre=$donnees['numero_chambre'];
        $id_chambre=$donnees['id'];
?>
 
<ul>
<li id="divDragDrop<?php echo $id_chambre; ?>" class="dispo" draggable="true" ondragstart="OnDragStart(this, event);">Chambre N° : <?php echo $numero_chambre; ?></li>
</ul>
<?php
    }
}
//on ferme la requete
$sql->closeCursor();
?>
</div><!--fermeture du second bloc-->
 
<div class="Reserve" ondragover="return false" ondrop="OnDropTarget(this, event);">
<p>
<h3 class="titre">Liste des chambres reservées</h3>
</p>
<?php
//on recupere les données concernant les chambres occupées du services.
$sql=$bdd->prepare('SELECT * from chambres where uf_service = ? AND etat = ?');
$sql->execute(array($_SESSION['uf'], 'reserve'));
 
while ($donnees = $sql->fetch())
{
    if( !isset($donnees['id']) || $donnees['etat']!='reserve')  
    {
        echo 'Il n\'y a aucune chambre de reservé';
    }
    else
    {
        $etat=$donnees['etat'];
        $numero_chambre=$donnees['numero_chambre'];
        $id_chambre=$donnees['id'];
?>
 
<ul>
<li id="divDragDrop<?php echo $id_chambre; ?> " class="occupee" draggable="true" ondragstart="OnDragStart(this, event);">Chambre N° : <?php echo $numero_chambre; ?></li>
</ul>
 
<?php
}
}
//on termine la requete
$sql->closeCursor();
?>
</div><!--fermeture du dernier bloc-->
</section>
</body>
</html><br><br>