Problème avec xajax et HttpRequest

help007 -  
wwinx Messages postés 4 Statut Membre -
Bonjour,

J'ai un problème avec xajax et HttpRequest.

J'ai une page Index.php qui appelle une page page.php (via xmlhttprequest) sur laquelle se trouve un bouton qui execute xajax_maFonction (onclick).

Lorsque je clique sur mon bouton sur page.php, ça marche nickel.

Mais lorsque je clique sur ce même bouton après que ma page ait été appelée par Index.php, Je reçois l'erreur "xajax_maFonction is not defined".

Quelqu'un aurait une explication ? Et une solution?

Merci!

10 réponses

  1. help007
     
    Salut,

    Merci pour ta réponse. L'erreur est détectée dans index.php, ligne 1.

    J'ai tenté de te coller mon code mais il n'y a pas assez de place.. tu peux le voir là :

    http://community.xajaxproject.org/viewtopic.php?id=5882

    Je peux te donner l'adresse en MP si les MP existent sur ce site ^^

    Merci!!
    0
    1. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
       
      si les MP existent sur ce site
      oui, il suffit d'être membre.
      0
  2. help007
     
    Ah j'oubliais :

    L'erreur n'est pas renvoyée par le debug de xajax qui ne s'execute pas via HttpRequest dans index.php et dit que tout ok (forcément) sur contact.php; elle est renvoyée par firebug!
    0
  3. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    comment est-ce que tu inclues 'contact.php' dans 'index.php' ?
    ça doit venir de là car ta déclaration de xajax a l'air bonne.
    0
  4. help007
     
    J'utilise ce code

    function envoieRequete(url,id)
    {
    var xhr_object = null;
    var position = id;
    if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
    else
    if (window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP");

    // On ouvre la requete vers la page désirée
    xhr_object.open("GET", url, true);
    xhr_object.onreadystatechange = function(){
    if ( xhr_object.readyState == 4 )
    {
    // j'affiche dans la DIV spécifiées le contenu retourné par le fichier
    document.getElementById(position).innerHTML = xhr_object.responseText;
    }
    }
    // dans le cas du get
    xhr_object.send(null);

    et ce lien :

    <a href="#" onclick="envoieRequete('contact.php','centre');" title="Contact">CONTACT</a>

    Le code me semble correct aussi mais apparemment la fonction xajax n'est pas reconnue :-(
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    salut,

    aurais-tu une version en ligne à nous montrer ?
    et colles nous stp l'erreur en entier que l'on sache par quel fichier elle est levée.
    -1
  7. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    suis en train de relire, en attendant as-tu lu ce thread chez Alsa ?
    avant de mettre du JS, est-ce que ton formulaire fonctionnait et est-ce que tu as vraiment besoin de JS ?
    -1
  8. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    essaie de mettre les 'include()' dans 'index.php'.
    require_once('phpmailer/class.phpmailer.php');
    require_once('xajax/xajax_core/xajax.inc.php');
    -1
  9. wwinx Messages postés 4 Statut Membre
     
    Oui, on en a discuté sur leurs forums mais tout ce que j'ai tenté sans JS comme https://www.webmaster-hub.com/publications/un-mailer-pour-votre-site-web/

    ne s'intègre pas très bien et puis c'est l'occasion d'apprendre de nouvelles choses, j'aimerais comprendre cette erreur :)

    <?php
    require_once('phpmailer/class.phpmailer.php');
    require_once('xajax/xajax_core/xajax.inc.php');
    ?>

    dans index.php donne

    Fatal error: Cannot instantiate non-existent class: xajax in contact.php on line 35

    Merci en tout cas!
    -1
  10. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    essaie de mettre les 'include()' dans 'index.php'.
    mauvaise idée, du coup on ne peut même plus tester en ligne…
    tu peux remettre les 'include()' où ils étaient !
    -1
  11. wwinx Messages postés 4 Statut Membre
     
    voilà, mais j'ai peur que ce soit sans espoir :(
    -1