Bonjour,

Je sais essayer d'expliquer mon problème le mieux possible :

avec des schémas l'explication sera plus facile ^^

index.... (jquery ajax ) ... => local.php ... 2 x ( jqueryFileTree ) ... => jqueryFileTree.php

Or ce jqueryFileTree.php fait appel à un fichier js. ci dessous :
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
$(document).ready( function() {
 
$('.supprimer').hide();
$('.enregistrer').hide();
$('.modifier').hide();
 
$('*.file').hover(function() {
           $('.supprimer').show();
            $('.enregistrer').show();
            $('.modifier').show();
        },
       function(){
   $('.supprimer').hide();
   $('.enregistrer').hide();
   $('.modifier').hide();
 
});
 
$('.enregistrer').bind("click",function(){
    var  fichier = $(this).attr('rel');
    alert(fichier);
    //enregistrerFile(fichier);
 
});
 
$('.modifier').click(function(e) {
     fichier = $(this).attr('rel');
     modifierFile(fichier);
    return false;
});
 
 
$('.supprimer').click(function() {
    fichier = $(this).attr('rel');
    if (confirm('Etes-vous sur de supprimer le fichier '+ fichier + '?')) {
 
         lien= document.location.href;
         page=document.location.href.split("#");
         page = page[1];
 
         adresse = "delete.php?fichier=" + fichier +"&lien=" + lien;
         //location=adresse;
 
        //var fso=new ActiveXObject("Scripting.FileSystemObject");
       // var ts=fso.DeleteFile("nom du fichier");
     $.ajax({  // ajax
        url: adresse, // url de la page � charger
        cache: false, // pas de mise en cache
        success:function(html){ // si la requêté est un succès
         //   afficher(html,'#upload');	    // on execute la fonction afficher(donnees)
            window.location.reload();
        },
        error:function(XMLHttpRequest, textStatus, errorThrows){ // erreur durant la requete
        }
    });
 
    return false;
 
}
});
 
 
});
Etant donné qu'il est chargé 2 fois, ben quand je fais un clic sur enregistrer sur une des 2 zone contenant jqueryFileTree.php, j'ai l'alerte en double. Sur la 2ème zone tout se déroule normalement.


code de local.php

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
 
<script  type="text/javascript">
$(document).ready( function() {
 
$('#fileTreeDemo_1').fileTree({root: $('#fileTreeDemo_1').attr('titre')+'#'+ $('#fileTreeDemo_1').attr('class'), script: 'jqueryFileTree.php'}, function(file) {
    if($('#fileTreeDemo_1').attr('class')=="baie")
        {
          openFilebaie(file);
        }else
        {
          openFile(file);
        }
 
 
});
 
$('#fileTreeDemo_2').fileTree({root: $('#fileTreeDemo_2').attr('titre')+'#'+ $('#fileTreeDemo_2').attr('class'), script: 'jqueryFileTree.php'}, function(file) {
          openFile(file);
 
});
 
</});script>
 
<div class="document schema" title="./Documents/'.$_GET['zone'].'/'.$_GET['lieu'].'/'.$_GET['batiment'].'/'.$_GET['local'].'/">
    <div class="titre_doc" >
                <h2>Schema des baies</h2>';
            if(isset($_SESSION['user'])){
                    echo'
 
                <span class="upload">
                    <a href="#upload.php~rep=./Documents/'.$_GET['zone'].'/'.$_GET['lieu'].'/'.$_GET['batiment'].'/'.$_GET['local'].'/">
                        <img src="Images/upload.png" width="16" height="16" alt="plus_upload"/>
                    </a>
                </span>';
                }
echo'
                <span class="afficher">
                    <a href="#">
                        <img src="Images/plus_upload.jpeg" width="16" height="16" alt="plus_upload"/>
                    </a>
                </span>
    </div>
 
    <div class="liste" >
        <div id="fileTreeDemo_1" class="baie" titre="Documents/'.$_GET['zone'].'/'.$_GET['lieu'].'/'.$_GET['batiment'].'/'.$_GET['local'].'/">
                <ul class="jqueryFileTree" style="">
                    <li class="directory collapsed">
                        <a href="#" rel="Forlder">documents</a>
                    </li>
                    <li class="directory collapsed">
                        <a href="#" rel="fichier">images</a>
                    </li>
                </ul>
        </div>
    </div>
 
    <iframe name="laFrame" class="visionneuse">
    </iframe>
 
</div>
<hr/>
 
 
<div class="document photos">
    <div class="titre_doc" >
                <h2>Liste des photos du local '.$_GET['local'].'</h2>';
            if(isset($_SESSION['user'])){
                    echo'
 
                <span class="upload">
                    <a href="#upload.php~rep=./Documents/'.$_GET['zone'].'/'.$_GET['lieu'].'/'.$_GET['batiment'].'/'.$_GET['local'].'/photos/">
                        <img src="Images/upload.png" width="16" height="16" alt="plus_upload"/>
                    </a>
                </span>';
                }
echo'
                <span class="afficher">
                    <a href="#">
                        <img src="Images/plus_upload.jpeg" width="16" height="16" alt="plus_upload"/>
                    </a>
                </span>
    </div>
   <div class="liste" >
        <div id="fileTreeDemo_2" class="photo" titre="./Documents/'.$_GET['zone'].'/'.$_GET['lieu'].'/'.$_GET['batiment'].'/'.$_GET['local'].'/photos/">
                    <ul class="jqueryFileTree" style="">
 
                    </ul>
            </div>
     </div>
</div>
';

code de jqueryFileTree.php

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
<?php
echo '<script  src="js/listelocaux.js" type="text/javascript"></script>';

$_POST['dir'] = urldecode($_POST['dir']);


$chaine = explode('#', trim($_POST['dir']));
$_POST['dir'] = $chaine[0];
echo"";// si le répertoire n'existe pas il sera creer
if( !file_exists($root . $_POST['dir']) ) {

    mkdir($_POST['dir'],0777,TRUE);

}


	$files = scandir($root . $_POST['dir']);
	natcasesort($files);
	if( count($files) > 2 ) { /* The 2 accounts for . and .. */
            
		echo "<ul class=\"jqueryFileTree\" style=\"display: none;\">";

                // on ne souhaite pas lister les repertoires si on est dans une zone
               foreach( $files as $file ) {
			if( file_exists($root . $_POST['dir'] . $file) && $file != '.' && $file != '..' && $file != 'Thumbs.db' && !is_dir($root . $_POST['dir'] . $file) )
                        {
				$ext = preg_replace('/^.*\./', '', $file);
				echo "
                                <li class=\"file ext_$ext\">
                                    <span class=\"nomfichier\">
                                        <a href=\"#\" rel=\"" . htmlentities($_POST['dir'] . $file) . "\">" . htmlentities($file) . "</a>
                                    </span>
                                    <span class=\"date\">".date ("d/m/Y H:i:s.", filemtime($_POST['dir'] . $file)). "
                                    </span>
                                    <span  class=\"enregistrer\" rel=\"" . htmlentities($_POST['dir'] . $file) . "\">enregistrer
                                    </span>
                                    <span  class=\"modifier\" rel=\"\\\\x.x.x.x\\" . htmlentities($_POST['dir'] . $file) . "\">modifier
                                    </span>
                                    <span  class=\"supprimer\" rel=\"" . htmlentities($_POST['dir'] . $file) . "\">supprimer
                                    </span>                                </li>" ;
                                

                        }
		}
                }
		echo "</ul>";	
	}
?>
Merci à vous,

Je pensais mettre une condition si déjà chargé ne pas rechargé le jquery, est ce possible?