Bonjour à tous,

j'ai développé un site internet, tout fonctionnait très bien en local et également sur le site d'un collègue, mais lorsqu'on a voulu le mettre sur le serveur censé nous héberger, l'autocompletion jQuery UI ne fonctionnait plus du tout.

Plus précisément, voici ce que je cherche à faire et qui marche chez moi et sur l'ordi du collègue

côté javascript :

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
$(function() {
 
  $.ajax({
      type: 'POST',
      url: "http://localhost/rexmat/utils/ajax.php",
      data: {name: "John"},
      dataType: "json",
      success: function(data){
                $(".rame").autocomplete({
                autoFocus: true,
                source: data
            });
      }
    });
});
et côté php

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
if(isset($_POST['name']) && $_POST['name']=="John") {
    $query = "SELECT * FROM materiel ORDER BY id_engin";
    $result = executerRequete($query);
    $tabrame = array();
    $i=0;
    while ($courant = mysql_fetch_assoc($result)){
        $tabrame[$i]=$courant['id_engin'];
        $i++;
    }
    echo json_encode($tabrame);
 
}
Première remarque :

remplacer le premier bloc par de l'autocomplete local fonctionne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
$(function() {
                $(".rame").autocomplete({
                autoFocus: true,
                source: ["01","06"]
            });
});
Deuxième remarque :

l'appel à ajax fonctionne

remplacer le premier bloc par

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
$(function() {
 
  $.ajax({
      type: 'POST',
      url: "http://localhost/rexmat/utils/ajax.php",
      data: {name: "John"},
      dataType: "json",
      success: alert('coucou')
    });
});
fonctionne bien, de même que


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
$(function() {
 
  $.ajax({
      type: 'POST',
      url: "http://localhost/rexmat/utils/ajax.php",
      data: {name: "John"},
      dataType: "json",
      success: $(".rame").autocomplete({
                autoFocus: true,
                source: ["01D","06D"]
            })
    });
});
Par contre, ce qui ne fonctionne pas, c'est la passage dans la fonction function(data):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
$(function() {
 
  $.ajax({
      type: 'POST',
      url: "http://localhost/rexmat/utils/ajax.php",
      data: {name: "John"},
      dataType: "json",
      success: function(data){
            alert('coucou')
      }
    });
});
ou encore mieux

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
  $.ajax({
      type: 'POST',
      url: "http://localhost/rexmat/utils/ajax.php",
      data: {name: "John"},
      dataType: "json",
      success: function(data){
            alert(data)
      }
    });
});

ne fonctionnent pas plus que l'autocompletion.

Je me dis donc qu'il doit y avoir un problème de configuration, mais les personnes responsables du serveur ne connaissent pas bien le dév et ne savent pas d'où ça peut venir, du coup si l'un d'entre vous a une idée pour me dépanner, je lui serais très reconnaissant.

Merci d'avance,

Sébastien