[PHP/AJAX] Lien via ajax

Résolu/Fermé
Utilisateur anonyme - 26 sept. 2011 à 13:57
 Utilisateur anonyme - 26 sept. 2011 à 15:59
Bonjour,
j'ai créer un script qui permet à la personne de générer un tableau à partir de deux select pour préciser la manière de classifier, ensuite, j'ai créer dans mon fichier appeler par une fonction ajax un système d'affichage page par page, mais le problème, c'est que celui-ci généré des liens conçus pour rappeler la fonction ajax, et donc, quand je clique sur un de mes liens, rien ne se passe, vous auriez la solutions ?

Merci, seby1996


4 réponses

Utilisateur anonyme
26 sept. 2011 à 14:48
Bonjour,

Si ce sont des liens AJAX, il faut les appeler via une fonction Javascript Ajax, et votre div contenant les valeurs sera réactualisée.
0
Utilisateur anonyme
26 sept. 2011 à 15:36
Merci de votre réponse, mais le problème, c'est que mes liens sont structurés comme ceci :
<a href="javascript:page(400, federal, 80)"


Et le problème, c'est que même si cela rappelle ma fonction ajax, cela ne fait rien !

Merci de votre réponse, seby ;)
0
Utilisateur anonyme
26 sept. 2011 à 15:39
C'est quoi cette variable federal ?
0
Utilisateur anonyme
26 sept. 2011 à 15:44
non, cela affiche un tavleau, cela permet juste à la personne de continuer en fonction de sa classification :dans ce cas-ci, c'est le champs federal de ma bdd qui permet de définir l'ordre d'affichage ! Ma page est php qui est appelée par le script s'appelle comme ceci : table.php?debut=400&order=federal&affich=80

Donc, le début de cette page est l'élément trouvé 400, le champs qui sert à la classification est feredal, et le nombre d'élément à afficher par page est 80 !

Merci !
0
Utilisateur anonyme
26 sept. 2011 à 15:48
La variable federal est donc en fait un string ;)
0
Utilisateur anonyme
26 sept. 2011 à 15:48
dans ce cas ça devrait être <a href="javascript:page(400, 'federal', 80)"
non ?
0
Utilisateur anonyme
26 sept. 2011 à 15:50
Oui, tu as raison, en relisant le mot variable, je me suis rendu compte de l'erreur !!! Un tout grand merci, ça fonctionne nickel ! Merci à vous, je met comme résolu !
0
Utilisateur anonyme
26 sept. 2011 à 15:45
Voilà mon code javascript pour l'ajax :
var xmlHttp = createXmlHttpRequestObject();
function createXmlHttpRequestObject() 
{
  var xmlHttp;
  try
  {
    xmlHttp = new XMLHttpRequest();
  }
  catch (e)
  {
    try
    {
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch(e) { }
  }
  if (!xmlHttp)
    alert("Erreur de création de l'objet XMLHttpRequest.");
  else 
    return xmlHttp;
}

function page(color, order, nbr)
{
	 script = "table.php?&debut=" + color + "&order=" + order + "&affich="+ nbr + "";
  if (xmlHttp)
  {
    try
    {
      xmlHttp.open("GET", script, true);
      xmlHttp.onreadystatechange = handleRequestStateChange;
	  xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); 
      xmlHttp.send(null);
    }
    catch (e)
    {
      alert("Connexion au serveur impossible :\n" + e.toString());
    }
  }
}
function handleRequestStateChange() 
{
  if (xmlHttp.readyState == 4) 
  {
    if (xmlHttp.status == 200) 
    {
      try
      {
        handleServerResponse();
      }
	  
      catch(e)
      {
        alert("Erreur de lecture de la réponse : " + e.toString());
      }
    } 
    else
    {
      alert("Problème d'obtention des données :\n" + xmlHttp.statusText);
    }
  }
} 


function handleServerResponse()
{
  var html = xmlHttp.responseText;  
  var myDiv = document.getElementById("tableAjax");
  myDiv.innerHTML = html;
}
0
Utilisateur anonyme
26 sept. 2011 à 15:51
Oui ça ressemble à de l'AJAX qui dépose le résultat dans un objet HTML qui a pour id 'tableAjax'
0