J'ai de nouveau un problème avec XMLHttpRequest… Voilà, j'ai une carte, que j'aimerais rafraichir lorsque l'utilisateur clique sur un bouton. Seulement, ça ne marche pas. Voici mes code :
index.php
<?php
require_once('xajax.inc.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>MAP</title>
<link rel="stylesheet" type="text/css" media="screen" href="skins.css" />
<script type="text/javascript" src="map.js"></script>
</head>
</body>
<?php
mysql_connect('localhost', 'root', 'root');
mysql_select_db('map');
$pseudo = 'Vorgat';
$recup = mysql_query("SELECT nom,posx,posy FROM persos WHERE nom='$pseudo'") or die(mysql_error());
$fetch = mysql_fetch_assoc($recup);
$posx = $fetch['posx'];
$posy = $fetch['posy'];
$compteurX = $posx - 3;
$compteurY = $posy + 3;
$finX = $posx + 3;
$finY = $posy - 3;
$debutX = $posx - 3;
echo '<div id="map">';
while($compteurY >= $finY) {
echo '<div class="ligneMap">', "\n";
while($compteurX <= $finX) {
echo "\t\t\t\t\t\t\t", '<div class="caseMap">';
if ($compteurX == ($posx - 1) && $compteurY == ($posy + 1))
{
echo '<div class="magicien">gg</div>';
}
$test = mysql_query("SELECT nom,skin FROM persos WHERE posx='$compteurX' AND posy='$compteurY'") or die(mysql_error());
if(mysql_num_rows($test) == 1) {
$data = mysql_fetch_assoc($test);
echo '<div class="', $data['skin'], '"></div>';
}
echo '</div>', "\n";
$compteurX++;
}
echo "\t\t\t\t\t\t", '</div>', "\n";
$compteurX = $debutX; // <===============ICI
$compteurY--;
}
echo '</div>';
echo '<input type="button" value="Rafraichir et changer la place du perso" onClick="refresh("'. $pseudo .'")" />';
mysql_close();
?>
</body>
</html>
map.js
Code : Tout sélectionner
refresh()
{
var http;
if (window.XMLHttpRequest)
{
http = new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
htpp = new ActiveXObject('Microsoft.XMLHTTP');
}
http.open('POST', 'refresh_map.php', true);
htpp.onreadystatechange = function() {
if (http.readyState == 4)
{
document.getElementById('map').value = http.responseText;
}
}
http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
var data = "pseudo=" + pseudo;
document.getElementById("map").innerHTML = pseudo;
http.send(data);
}<?php
echo 'Test';
?>
Voili, voiliou… Merci d'avance,
Tchouboudou