Bonjour,
Mon problème reel est d'affecter des parkings à des appartements, mais je ne peux affecter ces parkings qu'une fois. Je pars donc d'une base de données ou tous mes lots sont repertoriés et ou mes parkings sont proposés sous forme d'une liste de select dans la deuxième colonne du tableau.
Pour cela, je souhaite utiliser jeditable et proposer les choix provenant de ma base de données. Mais je souhaiterai qu'à chaque sélection les valeurs de mes champs select soient rechargés pour eviter des doublons.
pour l'instant mon code ressemble à ça
Fichier principal
fichier de sauvegarde
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 <?PHP include ("connection_base.php"); echo'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" >'; echo'<html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />'; //CSS echo'<link rel="StyleSheet" type="text/css" href="css/custom-theme/jquery-ui-1.8.5.custom.css" />'; //Javascript echo' <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>'; echo' <script type="text/javascript" src="js/jquery-ui-1.8.5.custom.min.js">'; echo' <script type="text/javascript" src ="js/jeditable.js" > </script>' ; ?> <script type="text/javascript"> $(document).ready(function() { $('.editabledyn').editable('save_editable2.php', { loadurl : 'json.php', type : 'select', submit : 'OK' }); }); </script> <?php echo'<title>essai</title>'; echo'</head>'; echo' <body >' ; echo'<form name="formulaire" id="formulaire" >'; //recuperation des valeurs de la table $sql="select * from editable where type='L'"; $result=mysql_query($sql)or die (mysql_error()); $i=0; while($row=mysql_fetch_array($result,MYSQL_ASSOC)) { $ref[$i]= $row['ref']; $n_appt[$i] = $row['n_appt']; $n_pkg[$i] = $row['pkg']; $type[$i] = $row['type']; $i+=1; } $nombre=$i; echo'<br /><br />'; echo'<table >'; for ($i=0;$i<$nombre;$i++) { echo'<tr><td>',$ref[$i],'</td><td>',$n_appt[$i],'</td><td><div class="editabledyn" id="', $ref[$i],'"> ',$n_pkg[$i],' </div></td></tr>'; } echo'</table>'; echo'</form>'; echo'</body></html>'; ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?php include("connection_base.php"); $table="editable"; $value=$_POST['value']; $position=$_POST['id']; $sql="UPDATE $table set pkg='$value' Where ref =$position"; $result=mysql_query($sql)or die (mysql_error()); ?>
fichier de determination des select
base de données simplifiée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php include("connection_base.php"); $table="editable"; $sql="select n_appt from editable where type ='P' "; $result=mysql_query($sql)or die (mysql_error()); $i=0; $array[''] = ''; while($row=mysql_fetch_array($result,MYSQL_ASSOC)) { $array[ $row['n_appt']] = $row['n_appt']; } $array['selected'] = ''; print json_encode($array); ?>
A l'heure actuelle tout fonctionne plutôt bien sauf que le fichier json ne se charge qu'au début et une fois pour toutes alors que je souhaiterai qu'il se recharge avant ou après chaque requête .
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 CREATE TABLE IF NOT EXISTS `editable` ( `ref` int(11) NOT NULL AUTO_INCREMENT, `n_appt` varchar(10) NOT NULL, `pkg` varchar(20) NOT NULL, `type` enum('L','P') NOT NULL, PRIMARY KEY (`ref`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ; -- -- Contenu de la table `editable` -- INSERT INTO `editable` (`ref`, `n_appt`, `pkg`, `type`) VALUES (1, 'A 001', 'P 002', 'L'), (2, 'A 002', 'P 003', 'L'), (3, 'A 003', 'P 004', 'L'), (4, 'P 001', '', 'P'), (5, 'P 002', '', 'P'), (6, 'P 003', '', 'P'), (8, 'A 005', '', 'L'), (7, 'P 004', '', 'P'), (9, 'P 005', '', 'P');
Merci de vos lumières sur ce sujet
Partager