Salut a tous!Voila je vous presente mon probleme! Je le retourne dans tous les sens et je ne trouve pas le moyen pour optimiser au maximum mon script.
En fait, mon jeu est un jeu ou le joueur dirige une agence de DJ.
Une Agence peut comporter plusieurs DJs.
Un Dj possede un materiel qui lui est propre.
Organisation de mes tables:
-Dj: Comporte les infos des Djs et le materiel qui lui est attribué
-Objets:Liste tous les objets du jeu: Proprietaire, Type objet...
-Categorie_objet: Liste toutes les caracteristiques de chaque objet: Xp qu'il rapporte, Nom, Marque etc....
L'attribution se passe comme ceci:
L'agence achete du materiel, et ensuite, peut l'attribuer a ses Differents Djs.
On peut attribuer au maximum 3platines, une table de mixage, un casque, un synthe et une boite a ryhtme par DJ.
Dans la table DJ un champs correspond a chaque type d'objet. Dans ces champs j'entre l'ID de l'objet unique.
En fait, mon probleme est que je veux passer des infos depuis 3tables.
Car lors de l'entrainement d'un Dj je veux l'xp qu'il gagne avec les objets qui lui sont attribués.
Donc:
Table Dj, Champ Objet trouve ID Objet>>ID objet permet de trouver l'objet et donc sa caracteristique, sont type d'objet>>Type d'objet permet de trouver son Type, et donc l'Xp qu'il rapporte.
Voila mon code pour le moment:
En fait, mon jeu est un jeu ou le joueur dirige une agence de DJ.
Une Agence peut comporter plusieurs DJs.
Un Dj possede un materiel qui lui est propre.
Organisation de mes tables:
-Dj: Comporte les infos des Djs et le materiel qui lui est attribué
-Objets:Liste tous les objets du jeu: Proprietaire, Type objet...
-Categorie_objet: Liste toutes les caracteristiques de chaque objet: Xp qu'il rapporte, Nom, Marque etc....
L'attribution se passe comme ceci:
L'agence achete du materiel, et ensuite, peut l'attribuer a ses Differents Djs.
On peut attribuer au maximum 3platines, une table de mixage, un casque, un synthe et une boite a ryhtme par DJ.
Dans la table DJ un champs correspond a chaque type d'objet. Dans ces champs j'entre l'ID de l'objet unique.
En fait, mon probleme est que je veux passer des infos depuis 3tables.
Car lors de l'entrainement d'un Dj je veux l'xp qu'il gagne avec les objets qui lui sont attribués.
Donc:
Table Dj, Champ Objet trouve ID Objet>>ID objet permet de trouver l'objet et donc sa caracteristique, sont type d'objet>>Type d'objet permet de trouver son Type, et donc l'Xp qu'il rapporte.
Voila mon code pour le moment:
Code PHP :
<?php
//Ceci sera l'include pour l'affichage des DJs ainsi que toutes les fonctions qui correspondront aux DJs.
//Note: Penser a prendre UNIX_TIMESTAMP() pour entrainement DJ
class DJ {
protected $id_dj;
protected $platine1_dj;
protected $platine2_dj;
protected $table_dj;
protected $xp_dj;
__construct([...]){
[...]
}
function entrainer_dj(){
/* code entrainement DJ */
/********* 1/Verification des conditions: appartenance du dj au joueur, date>aujourd'hui, et forme>20 *****/
if("Possibilité d'entrainer")
{
[b]//ICI selection des Infos matos du DJ pour savoir combien il gagne, triple requete Jointe?[/b]
$sql_entrainement = 'UPDATE dj SET forme_dj=forme_dj-20,xp_dj=xp_dj+'.$xp.',entrainement_dj=CURRENT_DATE() WHERE id_dj='.$this->id_dj;
}
}
function affichage_dj(){
/*code affichage dj */
//1: Affichage des infos générales: Nom, date de creation, xp, reput, forme
echo'<table width=50% align="center" border="1"><tr><td><b>Nom:</b></td><td>'.$this->nom_dj.'</td></tr>
<tr><td><b>Date de Création:</b> <td>'.$this->datecreation_dj.'</td></tr>
<tr><td><b>Experience:</b></td> <td>'.$this->xp_dj.'</td></tr>
<tr><td><b>Réputation:</b></td><td>'.$this->reputation_dj.'</td></tr>
<tr><td><b>Forme:</b></td><td>'.$this->forme_dj.'</td></tr>';
[b]//2. Affichage du Matos du DJ: Image + Nom[/b]
//3. Affichage des differentes actions possibles
if($this->statut_dj==0)
{
echo'<tr>';
//Entrainement?
if($this->forme_dj>=20 AND $this->entrainement_dj+86400 <= mktime(0, 0, 0, date("d, m, Y", time())))
{echo'<td><form method="post" action="dj.php"><input value="1" type="hidden" name="action_dj"><input value='.$this->id_dj.' type="hidden" name="dj"><input type="submit" value="Entrainer"></td>';
}
}
}
?>
Voila je ne sais pas si j'ai ete clair et si c'est realisable. Je vous serais gré de m'aider!
Mon probleme porte aux endroits du code en gras.
A bientot
Corentone
PS:Le script est volontairement incomplet, rien ne sert de vous encombrer avec des infos inutiles et exterieures a mon interrogation.
EDIT:
modif. du code pour préserver la coloration du PHP