Gros problème avec Ajax

macros227 Messages postés 32 Statut Membre -  
 komtuveux -
Bonjour,

Alors voici, je souhaite montée un jeu type mmo. J'ai donc réalisé mes maps, et mon code. Seulement, pour le déplacement des personnages je préfèrerais utiliser Ajax qui est plus propre !
Actuellement, ca marche très bien, on peut se déplacer, seulement c'est s'accader et j'en passe, bref, moche. Beaucoup de personne m'ont dit qu'avec Ajax ca irait mieux.
D'accord, seulement je ne connais rien en Ajax ...
J'ai donc deux possibilités que je vais vous proposer ici :

- Soit je trouve une bonne âme pour m'aider dans la réalisation de ce script (ca je pense que je peux courire !)

- Soit je trouve une bonne âme pour m'expliquer concrêtement comment réaliser ce qui pour moi relève de l'impossible.

Pour information, mon code se compose comme ceci :
-> Affichage de la map, du personnage, et des personnages sur la map.
-> Affichage des cases autour du personnages : On clic sur la case et cela nous déplace
-> Récupération de la valeur du déplacement par un $_Get, update de la table personnage, et reload de la page.

Donc, les deux premières parties sont bonne je pense. Seulement c'est la dernière, j'aimerais bien en gros viré le $_get qui rend l'url horrible ... Pour cela je reload la page, mais la du coups c'est l'action même du reload qui rend tout horrible !!
Aidez moi je vous en pris *.*

1 réponse

komtuveux
 
slt l'ajax est un melange de language (php,css,javascript,xml) ce que tu cherche a faire c'est envoyer une requete invisible et reload juste les bloc des personnage ?
si c'est cela tu dois utiliser XMLHttpRequest (javascript) pour ce faire exemple :

//definition de l'objet XMLHTTP
function ajax() {

var ajaxou;

/*@cc_on

@if (@_jscript_version >= 5)

try {

ajaxou = new ActiveXObject("Msxml2.XMLHTTP");

} catch (e) {

try {

ajaxou = new ActiveXObject("Microsoft.XMLHTTP");

} catch (E) {

ajaxou = false;

}

}

@else

ajaxou = false;

@end @*/

if (!ajaxou && typeof XMLHttpRequest != 'undefined') {

try {

ajaxou = new XMLHttpRequest();

} catch (e) {

ajaxou = false;

}

}

return ajaxou;

}

var requete = ajax();
////////////////////////:::
function ki envoi les requete

function aajax(vara,varb)
{
var url = 'tapagephp?vara='+vara+'&varb='+varb;
http.open("GET", url , true);
http.onreadystatechange = traite_aajax;
http.send(null);

}
////////////////////////:::
function ki traite la reponse de la page php et ki gere la page en cours
function traite_aajax() {

if (http.readyState == 4) {

results = http.responseText;
alert(results);
}
}
0
komtuveux
 
dsl petite erreur :
function aajax(vara,varb)
{
var url = 'tapagephp?vara='+vara+'&varb='+varb;
requete.open("GET", url , true);
requete.onreadystatechange = traite_aajax;
requete.send(null);

}
function traite_aajax() {

if (requete.readyState == 4) {

results = requete.responseText;
alert(results);
}
}
ca marchera mieu la :p
0