Naffer20 Posted May 27, 2011 Posted May 27, 2011 (edited) Hi, i've been trying to fix this for awhile.. I've been looking at tuts but none of them work. Anyone know how to fix this? I'm getting.. Parse error: syntax error, unexpected $end in /home2/mafiasta/public_html/lottery.php on line 58 Heres the code- <?php require "globals.php"; $cost = 100; if(!$_GET['a']) { $sql = sprintf("SELECT * FROM `lottery`"); $query = $db->query($sql); $row = $db->fetch_row($query); echo sprintf("' <font color = red size = 5>[b] Welcome to the National Jackpot. You currently have %d tickets and are able to purchase upto %d tickets per week. Each ticket costs \$%d. The jackpot is \$%u", $ir['lottery'], $tick, $cost,$row['jackpot']); echo' <form action = "lottery.php?a=buy" method = "post"> <input type = "submit" value = "Buy a Lottery Ticket"> </form>'; } if($_GET['a'] == buy) { if($ir['money'] < 100) { die("You don't have enough cash"); $tickq = $db->query("SELECT * FROM `lottery` WHERE `userid` = '$ir[userid]'"); if($db->num_rows($tickq) > $tick) { die('You can olnly purchase ' .$tick. ' tickets maximum'); } echo' You purchased a lottery ticket'; $sql = sprintf("UPDATE `users` SET `lottery` = `lottery` + %d, `money` = `money` - %d WHERE `userid` = (%u)", 1, $cost, $userid); $db->query($sql); $sql1 = sprintf("INSERT INTO `lottery` (id,userid, amount) VALUES (%d,%u, %d)", '',$userid, $cost); $db->query($sql1); $sql2 = sprintf("UPDATE `lottery` SET `jackpot` = `jackpot` + %d", $cost); $db->query($sql2); } $h->endpage(); ?> Edited May 27, 2011 by Dominion Code tags Quote
Dominion Posted May 27, 2011 Posted May 27, 2011 add a an extra } (you're not closing the original if() on line 22 ) Quote
SilvaTungDevil Posted May 27, 2011 Posted May 27, 2011 <?php require "globals.php"; $cost = 100; if(!$_GET['a']) { $sql = sprintf("SELECT * FROM `lottery`"); $query = $db->query($sql); $row = $db->fetch_row($query); echo sprintf("' <font color = red size = 5>[b] Welcome to the National Jackpot. You currently have %d tickets and are able to purchase upto %d tickets per week. Each ticket costs \$%d. The jackpot is \$%u", $ir['lottery'], $tick, $cost,$row['jackpot']); echo' <form action = "lottery.php?a=buy" method = "post"> <input type = "submit" value = "Buy a Lottery Ticket"> </form>'; } if($_GET['a'] == buy) { if($ir['money'] < 100) { die("You don't have enough cash"); $tickq = $db->query("SELECT * FROM `lottery` WHERE `userid` = '$ir[userid]'"); if($db->num_rows($tickq) > $tick) { die('You can olnly purchase ' .$tick. ' tickets maximum'); } echo' You purchased a lottery ticket'; $sql = sprintf("UPDATE `users` SET `lottery` = `lottery` + %d, `money` = `money` - %d WHERE `userid` = (%u)", 1, $cost, $userid); $db->query($sql); $sql1 = sprintf("INSERT INTO `lottery` (id,userid, amount) VALUES (%d,%u, %d)", '',$userid, $cost); $db->query($sql1); $sql2 = sprintf("UPDATE `lottery` SET `jackpot` = `jackpot` + %d", $cost); $db->query($sql2); } } $h->endpage(); ?> Try that, you forgot to close one of your if statements Quote
Naffer20 Posted May 27, 2011 Author Posted May 27, 2011 (edited) <?php require "globals.php"; $cost = 100; if(!$_GET['a']) { $sql = sprintf("SELECT * FROM `lottery`"); $query = $db->query($sql); $row = $db->fetch_row($query); echo sprintf("' <font color = red size = 5>[b] Welcome to the National Jackpot. You currently have %d tickets and are able to purchase upto %d tickets per week. Each ticket costs \$%d. The jackpot is \$%u", $ir['lottery'], $tick, $cost,$row['jackpot']); echo' <form action = "lottery.php?a=buy" method = "post"> <input type = "submit" value = "Buy a Lottery Ticket"> </form>'; } if($_GET['a'] == buy) { if($ir['money'] < 100) { die("You don't have enough cash"); $tickq = $db->query("SELECT * FROM `lottery` WHERE `userid` = '$ir[userid]'"); if($db->num_rows($tickq) > $tick) { die('You can olnly purchase ' .$tick. ' tickets maximum'); } echo' You purchased a lottery ticket'; $sql = sprintf("UPDATE `users` SET `lottery` = `lottery` + %d, `money` = `money` - %d WHERE `userid` = (%u)", 1, $cost, $userid); $db->query($sql); $sql1 = sprintf("INSERT INTO `lottery` (id,userid, amount) VALUES (%d,%u, %d)", '',$userid, $cost); $db->query($sql1); $sql2 = sprintf("UPDATE `lottery` SET `jackpot` = `jackpot` + %d", $cost); $db->query($sql2); } } $h->endpage(); ?> Try that, you forgot to close one of your if statements EDIT: I had to change the code because when i went to buy the ticket nothing would happen, an now i'm getting the error again. Could you help? :( Heres the code- <?php require "globals.php"; $cost = 100; if(!$_GET['a']) { $sql = sprintf("SELECT * FROM `lottery`"); $query = $db->query($sql); $row = $db->fetch_row($query); print "<center> <u>Lottery Center</u> <br> <a href='lottery.php?action=buy'>Buy Ticket</a><br /> </center>"; if($_GET['a'] == buy) { if($ir['money'] < 100) { die("You don't have enough cash"); $tickq = $db->query("SELECT * FROM `lottery` WHERE `userid` = '$ir[userid]'"); if($db->num_rows($tickq) > $tick) { die('You can olnly purchase ' .$tick. ' tickets maximum'); } echo' You purchased a lottery ticket'; $sql = sprintf("UPDATE `users` SET `lottery` = `lottery` + %d, `money` = `money` - %d WHERE `userid` = (%u)", 1, $cost, $userid); $db->query($sql); $sql1 = sprintf("INSERT INTO `lottery` (id,userid, amount) VALUES (%d,%u, %d)", '',$userid, $cost); $db->query($sql1); $sql2 = sprintf("UPDATE `lottery` SET `jackpot` = `jackpot` + %d", $cost); $db->query($sql2); } } $h->endpage(); ?> Edited May 27, 2011 by Naffer20 Quote
sniko Posted May 27, 2011 Posted May 27, 2011 <?php require "globals.php"; // //START Vars to Edit // $cost = 100; $maxTickets = 5; // //END Vars to Edit // if(!$_GET) { return index(); } switch($_GET['x']) { case 'buy' : buy(); break; default: index(); } echo "<h3>Lottery<h3>"; function index() { global $h, $cost; echo "The Lottery Centre! <br /> <i>Playing the lottery is a gamble, as you are playing against the odds for the big win!</i> <br /> » <a href='?x=buy'>Purchase a lottery ticket</a>... <br /> <strong>Cost per ticket:</strong> ". number_format($cost); exit( $h->endpage() ); } function buy() { global $h, $cost, $db, $ir, $userid; $query = $db->query("SELECT * FROM `lottery`"); $r = $db->fetch_row($query); if($ir['money'] < $cost) { echo "You are unable to buy a ticket as you don't have enough money <br /> » <a href='index.php'>Back Home</a> <br /> » <a href='?x=index'>Back to Lottery Centre</a>"; exit( $h->endpage() ); } $tickq = $db->query("SELECT * FROM `lottery` WHERE `userid` = ". $userid); if($db->num_rows($tickq) > $tick) { echo "You can only purchase ". number_format($maxTickets) ." tickets maximum! <br /> » <a href='index.php'>Back Home</a> <br /> » <a href='?x=index'>Back to Lottery Centre</a>"; exit( $h->endpage() ); } echo "Congratulations, You have bought a lottery ticket..."; $db->query("UPDATE `users` SET `lottery`=`lottery`+1, `money`=`money`-". $cost ." WHERE `userid`=".$userid); $db->query("INSERT INTO `lottery` (`id`,`userid`,`amount`) VALUES ('', $userid, $cost)"); $db->query("UPDATE `lottery` SET `jackpot`=`jackpot`+".$cost); exit( $h->endpage() ); } ?> Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.