
Membre
|
Bonjour je bloque sur un probleme depuis quelques jours
Je voudrais faire un filtre avec trois possibilité (Perdant, Gagnant, Inconnue)
Jusque la c'est bon je sais faire
Mais je bloque sur ma case probabilté, je m'explique mieux:
chaque joueur rentre ses stats dans ma base de donnée ce qui donne un fightvalue en fonction de son attaque et de sa defense.
Je voudrai comparer ce fightvalue aux fightvlue de nos ennemie et en clair si le fightvalue du membre est supérieur au fightvalue de l'adversaire ca s'inscrit "Perdant" dans ma case probabilité et ainsi de suite.
Lorsque je rentre manuellement dans ma bdd dans la colonne "probalité" ca fonctionne tres bien, mais je bloque surtout sur la comparaison des fightvalue
Voici mon bout de code
<?php
//On se connecte a la Base de donnee
include('mysqlcnn.php');
//On verifie si lutilisateur est connecte
if(isset($_SESSION['clodo']))
{
/////////////////////////nouvelle version
$sql = " SELECT clodo FROM membre ";
$result = mysql_query($sql) or die("Requete pas comprise");
echo "<select name='equipier' id='equipier'>
<OPTION VALUE='".$_SESSION['clodo']."'>".$_SESSION['clodo']."</OPTION>";
echo "</select>";
////////////////////////nouvelle version
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<input type="radio" name="filtre" value="gagnant" id="gagnant" /><label for="gagnant"><span class="1">Combat gagnant</span></label><br>
<input type="radio" name="filtre" value="perdant" id="perdant" /><label for="perdant"><span class="1">Combat perdant</span></label><br>
<input type="radio" name="filtre" value="inconnu" id="inconnu" /><label for="perdant"><span class="1">Combat inconnu</span></label><br>
<input type="radio" name="filtre" value="tout" id="tout" /><label for="perdant"><span class="1">tous les combats</span></label><br>
<input type="submit" name="sub_filtre" value="filtre">
</form></center></div>
<?php
////////////////////////////////////////////////////////////////////////////////
if(isset($_POST["filtre"]) AND isset($_POST['equipier'])){
$equipier = htmlentities($_POST['equipier']);
$fight=mysql_query("select fightvalue from membre WHERE clodo=\"".$equipier."\" ") or die('Erreur SQL !<br>'.$fight.mysql_error());
$ligne = mysql_fetch_object($fight);
$FightvalueEquipiers = $ligne->fightvalue;
////////////////////////////////////////////////////////////////////////////////
$fight2=mysql_query("select * from ennemi") or die('Erreur SQL !<br>'.$fight2.mysql_error());
$ligne1 = mysql_fetch_object($fight2);
$FightvalueAdversaire = $ligne1->maxi;
$fight3=mysql_query("select * from ennemi") or die('Erreur SQL !<br>'.$fight3.mysql_error());
$ligne2 = mysql_fetch_object($fight3);
$FightvalueAdversaires = $ligne2->mini;
}
if(($FightvalueAdversaires>=$FightvalueEquipiers) && ($FightvalueAdversaires>0))
{$sql = "UPDATE ennemi SET probabilite='Perdant' ";
//echo "Requete Perdante : ".$sql."<br />";
$requete=mysql_query($sql) or die ('erreur perdant ad');
}
elseif($FightvalueEquipiers<$FightvalueAdversaire){
$sql2 = "UPDATE ennemi SET probabilite='Perdant' ";
//echo "Requete Perdante : ".$sql."<br />";
$requete2=mysql_query($sql2) or die ('erreur perdant ad');
} elseif ($FightvalueEquipiers>$FightvalueAdversaire) {
$sql3 = "UPDATE ennemi SET probabilite='Gagnant' ";
//echo "Requete Gagnante : ".$sql."<br />";
$requete3=mysql_query($sql3) or die ('erreur gagnant ad');
}
// Fonction pour construire une table à partir des résultat de la requête
function buildClodoTable($where='') {
// Ajouter la clause where si définie (par défaut, tout le temps)
if ($where!='') $where = ' WHERE '.$where;
// Construire la requete
$query = "SELECT clodo,mini,maxi,probabilite FROM ennemi {$where} ORDER BY Clodo";
// Executer la requete
$result = mysql_query($query);
if ($result==false) {
}
$lines = '';
while ($row = mysql_fetch_array($result)) {
switch ($row['probabilite']) {
case 'Perdant': $style = 'background-color:red'; break;
case 'Gagnant': $style = 'background-color:rgb(35,248,40)'; break;
case 'Inconnu': $style = 'background-color:rgb(199,199,199)'; break;
default: $style= ''; break;
}
$lines .= '
<tr style="'.$style.'">
<td>'.$row['clodo'].'</td>
<td>'.$row['mini'].'</td>
<td>'.$row['maxi'].'</td>
<td>'.$row['probabilite'].'</td>
</tr>';
}
if ($lines=='') {
return 'Aucun resultat dans la table !';
}
return '
<table border="1" cellpadding=5 cellspacing=5 height=50>
<tr>
<th class="name"> Nom clodo </th>
<th> Pts Mini </th>
<th> Pts maxi </th>
<th> Probabilité </th>
</tr>'.$lines.'
</table>';
}
// Si on a un filtre
if (isset($_POST['sub_filtre']) AND isset($_POST['filtre'])) {
$where = '';
switch ($_POST['filtre']) {
case 'perdant': $where = "probabilite='Perdant'"; break;
case 'gagnant': $where = "probabilite='Gagnant'"; break;
case 'inconnu': $where = "probabilite='Inconnu'"; break;
// colonne type dans la table ennemi n'exite plus
// case 'tout': $where = "Type='Adversaire'"; break;
}
//Construire le tableau à partir du résultat de la requête
$table = buildClodoTable($where);
echo $table;
}
Merci de votre aide
|

Membre
|
J ai assi poster mon problème sur le site du zéro dont voici le lien du Rioux
http://www.siteduzero.com/forum-83-614525-p1-tri-en-fonction-de-la-probabilite.html#r5924815
En bas tu topic on me donne une solution mais je ne comprend pas les jointure je ne connais
Merci si vous pouvez m aider
|