Hey Everyone,

I've been working on a PHP craps game, and I'm not sure why my code isn't working. Everything seems logical to me, but I can't get my inner loop to work.
The game of craps:
1) Roll a pair of die and add their some
2)IF on the 1st roll the sum == 7 or 11 then the user wins
IF on 1st roll sum == 2,3, or 12 user loses
IF it is any other number, THEN that number becomes the "point" that the user has to continue to roll to get. IF the user gets the 'point' then they win that round, unless they roll a 7, in which case they lose that round


Here is my code:

<?

  if($message) {

      if($userRoll==1){
        $rollSum=(rand(1,6) + rand(1,6));
          if ($rollSum==7 || $rollSum==11){                 
            $userScore +=1;
            $message="You Won!, User Score: $userScore , Comp Score: $compScore";
            $userRoll=1;
          } else {
            if($rollSum==2 || $rollSum==3 || $rollSum==12){
              $compScore +=1;
              $message="You Lost!, User Score: $userScore,  Comp Score: $compScore";
              $userRoll=1;
            } else {
                $message="Keep Rolling for Point..";
                $userRoll=0;
                $pointRoll=(rand(1,6) + rand(1,6));
                $point=$rollSum;
                  if($point==$pointRoll){
                    $userScore +=1;
                    $message="You Won The Point! UserScore: $userScore, Comp Score: $compScore";
                    $userRoll=1;
                    $point=0;
                    $pointRoll=0;
                  } else {
                    if($pointRoll==7){
                      $compScore +=1;
                      $message="You Lost The Point, User Score:$userScore, Comp Score: $compScore";
                      $userRoll=1;
                      $point=0;
                      $pointRoll=0;

       
       }
      }
     }
    }
   }
  
  } else {    
      $message= "Welcome to the Craps Game.";
      $compScore=0;
      $userScore=0;
      $userRoll=1;
  
  }

?>


<html><head><title>Craps with hidden fields</title></head><body>

<p> <h2>Craps Game </h2> <br/>

<br/>

<?=$message?> <br/>
<br/>



<form>
Press <input type="submit"  value="Proceed" / > to play.

<input type="hidden" name="message" value="<?=$message?>">
<input type="hidden" name="userScore" value="<?=$userScore?>">
<input type="hidden" name="compScore" value="<?=$compScore?>">
<input type="hidden" name="rollSum" value="<?=$rollSum?>">
<input type="hidden" name="pointRoll" value="<?=$pointRoll?>">
<input type="hidden" name="point" value="<?=$point?>">
<input type="hidden" name="userRoll" value="<?=$userRoll?>">



</form>

<p> Roll: <?=$rollSum?>
<p> Point Roll: <?=$pointRoll?>
<p> Point: <?=$point?>
<br/>
<br/>
Computer Score: <?=$compScore?> <br/>
User Score: <?=$userScore?>
<br/>

User Roll: <?=$userRoll?>



</body>
</html>

You're not collecting the submitted values anywhere. Use the global $_GET values to retrieve the values of the hidden fields when the form is submitted.

This article has been dead for over six months. Start a new discussion instead.