07-10-2007, 09:07 PM
J'ai déjà eu beaucoup de problèmes avec cet inventaire... je viens donc avec un nouveau problème.
Mon inventaire se trouve à coté de l'image du personnage. Pour placer un objet sur le ersonnage, il faut déplacer l'objet de l'inventaire sur l'image du personnage (Drag and Drop).
Celà recharge l'image du perso et l'inventaire par fonction javascript mais l'inventaire n'agit pas de la bonne manière après le chargement.
Quand je dépose un objet sur le perso, celà active la fonction file(fichier) :
Mon inventaire se trouve à coté de l'image du personnage. Pour placer un objet sur le ersonnage, il faut déplacer l'objet de l'inventaire sur l'image du personnage (Drag and Drop).
Celà recharge l'image du perso et l'inventaire par fonction javascript mais l'inventaire n'agit pas de la bonne manière après le chargement.
Quand je dépose un objet sur le perso, celà active la fonction file(fichier) :
Code PHP :
<?php
function file(fichier)
{
// partie changement de l'image
if(window.XMLHttpRequest) // FIREFOX
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object.open("GET", fichier, false);
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
// partie changement inventaire
var url = 'chang_inventaire.php';
if(window.XMLHttpRequest) // FIREFOX
xhr_object1 = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object1 = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object1.open("GET", url, false);
xhr_object1.send(null);
if(xhr_object1.readyState == 4)
{
var inventaire = xhr_object1.responseText;
document.getElementById('centre_inventr').innerHTML = inventaire;
}else return(false);
}
Le but de la premiere partie de ce script est de modifier les objets portés par le personnage et de modifier l'image du perso. De ce coté tout va bien.
La seconde partie est sencé sortir les nouvelles données de l'inventaire (donc sans l'objet déplacé) et remplacer l'ancien inventaire par le nouveau.
J'appelle le fichier chang_inventaire.php qui est :
Code PHP :
<?php
session_start();
include("connection.php");
$id = $_SESSION['id'];
$req_count = mysql_query("SELECT COUNT(*) AS nbr FROM seiryoku_objet WHERE possesseur='".$id."' AND port='non'")or die(mysql_error());
$sql_count = mysql_fetch_array($req_count);
if($sql_count['nbr'] == 0)
{
echo '<center>Il n\'y a aucun objet dans votre inventaire.</center>';
}
else
{
$req_item = mysql_query("SELECT id,type_objet,etat,valeur FROM seiryoku_objet WHERE possesseur='".$id."' AND port='non'")or die(mysql_error());
while($sql_item = mysql_fetch_array($req_item))
{
$type_objet_inventaire = $sql_item['type_objet'];
$req_image = mysql_query("SELECT nom,poids,valeur_depart,etat_depart,image FROM seiryoku_objet_type WHERE nom_type='".$type_objet_inventaire."'")or die(mysql_error());
$sql_image = mysql_fetch_array($req_image);
?>
<img src="images/<?php echo $sql_image['image']; ?>" title="<?php echo $sql_image['nom']; ?> Poids : <?php echo $sql_image['poids']; ?> up Etat : <?php echo $sql_item['etat']; ?>/<?php echo $sql_image['etat_depart']; ?> Valeur : <?php echo $sql_item['valeur']; ?> Zen" alt="<?php echo $sql_item['nom']; ?>" id="<?php echo $sql_item['id']; ?>" />
<script type="text/javascript">new Draggable('<?php echo $sql_item['id']; ?>', {revert:true})</script>
<?php
}
?>
pom
<?php
}
?>