Je comprend pas l'utilité de min() et de max() parcequ' il retournent le chiffre le plus petit et le plus grand d'une chaîne de charactére. :heuuu:
Je deviens pas embêtant j'espére.iffle:
Edit: je ne sais pas pourquoi, je ne sais pas comment mais mon ancien script fonctionne, si ça peut aider quelqu'un voici ce que cela donne:
Je deviens pas embêtant j'espére.iffle:
Edit: je ne sais pas pourquoi, je ne sais pas comment mais mon ancien script fonctionne, si ça peut aider quelqu'un voici ce que cela donne:
Code PHP :
<?php
//si les variables existent
if(isset($_POST['mouvement']))
{
$mouvement = htmlentities($_POST['mouvement']);
$test = mysql_query('SELECT posX, posY FROM map INNER JOIN map_membre ON map.id_case = map_membre.id_case WHERE map_membre.login_membre = "'. $_COOKIE['pseudo'] .'"');
$_test = mysql_fetch_array($test);
$posX = $_test['posX'];
$posY = $_test['posY'];
if($mouvement == "haut")
{
$nouvelle_position_Y = $posY - 1;
if($nouvelle_position_Y >= 1)
{
$a = mysql_query('SELECT id_case FROM map WHERE posX = "'. $posX .'" AND posY = "'. $nouvelle_position_Y .'"')or die(mysql_error());
$b = mysql_fetch_array($a);
$nouvelle_id_case = $b['id_case'];
mysql_query('UPDATE map_membre SET id_case = "'. $nouvelle_id_case .'" WHERE login_membre = "'. $_COOKIE['pseudo'] .'"')or die(mysql_error());
}
else
{
}
}
elseif($mouvement == "bas")
{
$nouvelle_position_Y = $posY + 1;
if($nouvelle_position_Y <= 2)
{
$a = mysql_query('SELECT id_case FROM map WHERE posX = "'. $posX .'" AND posY = "'. $nouvelle_position_Y .'"')or die(mysql_error());
$b = mysql_fetch_array($a);
$nouvelle_id_case = $b['id_case'];
mysql_query('UPDATE map_membre SET id_case = "'. $nouvelle_id_case .'" WHERE login_membre = "'. $_COOKIE['pseudo'] .'"')or die(mysql_error());
}
else
{
}
}
elseif($mouvement == "gauche")
{
$nouvelle_position_X = $posX - 1;
if($nouvelle_position_X >= 1)
{
$a = mysql_query('SELECT id_case FROM map WHERE posX = "'. $nouvelle_position_X .'" AND posY = "'. $posY .'"')or die(mysql_error());
$b = mysql_fetch_array($a);
$nouvelle_id_case = $b['id_case'];
mysql_query('UPDATE map_membre SET id_case = "'. $nouvelle_id_case .'" WHERE login_membre = "'. $_COOKIE['pseudo'] .'"')or die(mysql_error());
}
else
{
}
}
elseif($mouvement == "droite")
{
$nouvelle_position_X = $posX + 1;
if($nouvelle_position_X <= 9)
{
$a = mysql_query('SELECT id_case FROM map WHERE posX = "'. $nouvelle_position_X .'" AND posY = "'. $posY .'"')or die(mysql_error());
$b = mysql_fetch_array($a);
$nouvelle_id_case = $b['id_case'];
mysql_query('UPDATE map_membre SET id_case = "'. $nouvelle_id_case .'" WHERE login_membre = "'. $_COOKIE['pseudo'] .'"')or die(mysql_error());
}
else
{
}
}
else
{
}
}
Et le formulaire:
<table align="center">
<tr>
<form method="post" action="map3.php">
<td></td><td><input name='mouvement' type='hidden' value='haut'><input type="submit" value="Allez au Nord" /></td><td></td>
</form>
</tr>
<tr>
<form method="post" action="map3.php">
<td><input name='mouvement' type='hidden' value='gauche'> <input type="submit" value="Allez à l'Ouest" /></td></form><td></td><form method="post" action="map3.php"><td><input name='mouvement' type='hidden' value='droite'> <input type="submit" value="Allez à l'Est" /></form></td>
</tr>
<tr>
<form method="post" action="map3.php">
<td></td><td><input name='mouvement' type='hidden' value='bas'> <input type="submit" value="Allez au Sud" /></td><td></td>
</form>
</tr>
</table>
J'ai continue à chercher pour min() et max si cela peut réduire le script et le clarifier.