Problème en php

Résolu/Fermé
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 - 27 août 2011 à 15:42
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 - 27 août 2011 à 21:56
Bonjour, je souhaite créer un site regroupant différents jeux de cartes (poker, belote, ...). Je suis en train d'implémenter la partie du poker. Le problème que j'ai c'est lorsque l'utilisateur clique sur un bouton pour suivre les autres joueurs, les cartes qu'il a changes (elles sont retirées au hasard, ceci pose problème). Je vous ai mis en gras la partie qui me pose problème.

voici le code de ma page :

<html>
<head>
<title>Poker</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="HAPedit 2.6">
</head>
<body bgcolor="#007700">

<!-- placement du flot (3 premières cartes)-->
<center><img id=fr src=cartes/dos_carte/dos.jpg><img id=fr src=cartes/dos_carte/dos.jpg><img id=fr src=cartes/dos_carte/dos.jpg>
<img id=fr src=cartes/dos_carte/dos.jpg>
<img id=fr src=cartes/dos_carte/dos.jpg></center>
<!-- placement des des cartes retournées des adversaires -->
<br>        <img src=cartes/dos_carte/dos_cote.jpg><br>
        <img src=cartes/dos_carte/dos_cote.jpg><br>
Main du joueur1
<br><br>
        <img id=fl src=cartes/dos_carte/dos_cote.jpg><br>
        <img id=fl src=cartes/dos_carte/dos_cote.jpg><br>
Main du joueur2<br>
<!--<img id=fr src=cartes/dos_carte/dos_cote.jpg><br>
<img id=fr src=cartes/dos_carte/dos_cote.jpg><br>-->
<br><br><center>
<!--<SCRIPT language="Javascript">
var Nom = prompt("Quel sera votre nom de joueur ?");
while((Nom == "") || (Nom == "null")){
alert("Merci de saisir un nom");
var Nom = prompt("Quel sera votre nom de joueur ?");
}
if( Nom != "")
document.write("Main de " +Nom);
</SCRIPT>-->
</center>
<?php
$t=$_GET['pw'];
echo "".$t."";
/**************cartes joueurs du haut*********************************/
$formecarte1joueur1 = rand(1, 4);
$formecarte2joueur1 = rand(1, 4);

$valeurcarte1joueur1 = rand(1, 13);
$valeurcarte2joueur1 = rand(1, 13);

if($formecarte1joueur1 == $formecarte2joueur1){
while($valeurcarte1joueur1 == $valeurcarte2joueur1){
$valeurcarte2joueur1 = rand(1, 13);
}
}
/**************cartes joueurs de gauche*********************************/
$formecarte1joueur2 = rand(1, 4);
$formecarte2joueur2 = rand(1, 4);

$valeurcarte1joueur2 = rand(1, 13);
$valeurcarte2joueur2 = rand(1, 13);

if($formecarte1joueur2 == $formecarte2joueur2){
while($valeurcarte1joueur1 == $valeurcarte2joueur1){
$valeurcarte2joueur1 = rand(1, 13);
}
}
/**************les cartes pour le joueur******************************/
/**************on choisit une forme***********************************/
$forme1 = rand(1, 4);
$forme2 = rand(1, 4);
/**************on tire une carte de la forme choisie******************/
$carte1 = rand(1, 13);
$carte2 = rand(1, 13);

if($forme1 == $forme2){
while($carte1 == $carte2){
$carte2 = rand(1, 13);
}
}
echo "<center>
<img id=fl src=cartes/".$forme1."/".$carte1.".jpg>
<img id=fl src=cartes/".$forme2."/".$carte2.".jpg>";

/*while(!empty($_POST['suivre'])){
echo"<center>
<img id=fl src=cartes/".$forme1."/".$carte1.".jpg>
<img id=fl src=cartes/".$forme2."/".$carte2.".jpg>
</center>";
} */

echo"
<form action=#?pw=".$forme1." method=post
<input type=submit NAME=suivre value=Suivre>
</form>
</center>";
// <input type=hidden value=".$forme1.">
if(!empty($_POST['suivre'])){

$t=$_GET['pw'];

echo "".$t."";

}

?>
</body>

</html>

merci de me répondre et dites moi si je n'ai pas été clair dans mes explications merci.

A voir également:

3 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
27 août 2011 à 20:29
qqs remarques:

dans les balises de formulaire tu dois mettre les valeurs des arguments entre " "
exemple name="suivre"

pour éviter d'avoir à échaper ces" a cahque fois dans ton echo mets echo ' '; au lieu de echo " ";

et utilises plutôt les champs cachés ( type="hidden" ) pour passer des valeurs tu peux en mettre autant que tu veux il suffit de leur donner un name différent

echo '
<form action="" method="POST" >
//il te manquait le > de fermeture de la balise <form

<input type="hidden" name="pw" value="'.$forme1.'" />
<input type="submit" name="suivre" value="Suivre">
</form>
</center>';
// 
if(isset($_POST['suivre'])){

$t=$_POST['pw'];

echo $t;
}
1
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 35
Modifié par Mickael86480 le 27/08/2011 à 22:00
merci Alain_42, tes critiques ont été très constructives, problème résolu
0
Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 209
27 août 2011 à 15:56
ca semble logique qu elle change.
Il y a pas de test avant de faire le rand.
moi je ferais un if (isset($Post)) et dans le else je ferais un truc much pour avoir les cartes
Mais pour la partie reseau, on voit pas de session ouverte sur le jeu. pour avoir le meme jeu de carte ...
bizarre!!!
0
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 35
Modifié par Mickael86480 le 27/08/2011 à 18:53
Ok je voudrais savoir s'il est possible de transmettre plusieurs valeurs lors d'un clique sur un bouton?
C'est a dire, deux formes de cartes (carreaux, coeur, ...) ainsi que deux valeurs de cartes de façon a se que je puisse ensuite les utiliser chacunes
0