[AJAX] requete sur une page php
Bonjour,
j'ai un petit probleme avec ajax, voila les codes:
Code : JavaScript
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
function change(stat) {
var xhr; // on déclare l'instance
if (window.XMLHttpRequest) xhr = new XMLHttpRequest(); // Firefox, Opera, Konqueror, Safari, ...
else if (window.ActiveXObject) xhr = new ActiveXObject('Microsoft.XMLHTTP'); // Internet Explorer
else alert('JavaScript : votre navigateur ne supporte pas les objets XMLHttpRequest...'); // Navigateur ancien
var pseudo = document.getElementById('pseudo').innerHTML;
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200){
document.getElementById(stat).innerHTML = xhr.responseText;
}
}
xhr.open("GET","stat.php?stat="+stat+"£amp;pseudo="+pseudo,true);
xhr.send(null); |
le reste de la page
Code : HTML
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
if(isset($_SESSION['pseudo'])) {
mysql_connect("localhost", "root", "");
mysql_select_db("jeu");
$pseudo = $_SESSION['pseudo'];
$retour2 = mysql_query("SELECT * FROM statu WHERE pseudo='$pseudo'");
$donne2 = mysql_fetch_array($retour2);
echo'<p><h3 id="pseudo">' . $donne2['pseudo'] . '</h3>';
echo 'Vous avez ' . $donne2['points'] . ' points à distribuer</p>';
echo '<p>Pour ajouter un point de stat, cliquez sur les points existants du statut que vous voulez augmenter<br/><br/>';
echo '<span onMouseOver="document.getElementById(\'info\').innerHTML = \'Force: Augmentez ce stat afin de faire plus dégats, et donc de gagner plus facilement les combats\';">Force</span>: <span onClick="change(force);">' . $donne2['force'] . '</span><br/>';
echo '<span onMouseOver="document.getElementById(\'info\').innerHTML = \'Marchandage: Augmentez ce stat afin de gagner plus d argent lorsque vous vendez vos céréales\';">Marchandage</span>: ' . $donne2['marchandage'] . '<br/>';
echo '<span onMouseOver="document.getElementById(\'info\').innerHTML = \'Chance: Augmentez ce stat pour augmenter votre gain dexperience à la fin d un combat\';">Chance</span>: ' . $donne2['chance'] . '<br/>';
echo '<span onMouseOver="document.getElementById(\'info\').innerHTML = \'Travail: Augmentez ce stat pour produire plus vite et ainsi gagner des ressources plus rapidement\';">Travail</span>: ' . $donne2['travail'] . '<br/>';
echo '<span onMouseOver="document.getElementById(\'info\').innerHTML = \'Maitrise des armes: Augmentez ce stat pour pouvoir équiper certaines armes\';">Maitrise des armes</span>: ' . $donne2['arme'] . '<br/>';
echo '<span onMouseOver="document.getElementById(\'info\').innerHTML = \'Maitrise des armures: Augmentez ce stat pour pouvoir équiper certaines armures\';">Maitrise des armures</span>: ' . $donne2['armure'] . '<br/><br/>';
echo '<input type="submit" value="valider"/>';
echo '</p>';
echo '<p id="info">Passez la souris sur un stat pour avoir sa description</p>';
}
else {
echo '<p>Vous n\'etes pas autorisé à être sur cette page</p>';
}
?> |
Et stat.php:
Code : PHP
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
<?php
if(isset($_GET['stat']) AND isset($_GET['pseudo']))
{
mysql_connect("localhost", "root", "");
mysql_select_db("jeu");
$pseudo = mysql_real_escape_string(htmlspecialchars($_GET['pseudo']));
$retour2 = mysql_query("SELECT * FROM statu WHERE pseudo='$pseudo'");
$donne2 = mysql_fetch_array($retour2);
if($donne2['points'] > 0) {
$stat = $_GET['stat'];
$new_point = $donne2['points'] - 1;
$new_stat = $donne2[$stat] + 1;
mysql_query("UPDATE statu SET $stat = $new_stat, points = $new_point WHERE pseudo='$pseudo'");
echo $new_stat;
}
else {
echo 'points de stat insuffisants';
}
}
?> |
Donc quand je clique sur le 5 de force, rien ne se passe. Desolé e faire une si courte description, mais je vois pas trop quoi mettre d'autre...^^
Donc si quelqu'un a une idee...
Merci d'avance
edit: ares quelques test, je sais maintenant que le probleme vient de responseText, il ne vaut rien