I was wondering how it would be possible to use "for loop" statements with the mysidia script since it can run a single line of code multiple times. I've looked at a bunch of tutorials online and I'm still lost with what to do with it. I wanted to use it to clean up the raffle script since, at the moment, the same line of code is copy-pasted over and over to make multiple database entries, like so:
PHP Code:
public function index(){
$mysidia = Registry::get("mysidia");
$document = $this->document;
$document->setTitle("Pet Outcomes");
$pool = $mysidia->db->select("raffle", array("pool"))->fetchColumn();
$document->add(new Comment( "There is currently {$pool} CURRENCY in the pool!"));
$document->add(new Paragraph());
//This section checks the date!
$currenttime = time();
$timerange = array(strtotime($this->stopdate));
if(!empty($timerange[1]) and $currenttime > $timerange[1]){
// The raffle has ended!
$winner = $mysidia->db->select("raffle_tickets", array("owner"), "1 ORDER BY RAND() DESC LIMIT 1")->fetchColumn();
$document->add(new Comment( "{$winner} won {$pool} CURRENCY from the raffle! Congratulations!"));
$endraffle = TRUE;
}
else{
//This is the ticket form!
$ticketForm = new FormBuilder("ticketForm", "", "post");
$exampleDropdown = new DropdownList("myList");
$exampleDropdown->add(new Option("5 tickets", "5"));
$exampleDropdown->add(new Option("10 tickets", "10"));
$exampleDropdown->add(new Option("15 tickets", "15"));
$exampleDropdown->add(new Option("20 tickets", "20"));
$ticketForm->buildComment("Amount: ", FALSE);
$ticketForm->add($exampleDropdown);
$ticketForm->buildComment("<br></br>");
$ticketForm->buildButton("Buy tickets", "buy", "submit");
$document->add($ticketForm);
}
//This part adds the number of tickets the user buys to the database
if($mysidia->input->post("buy")){
$chosenOption = $mysidia->input->post("myList");
if($chosenOption == "5"){
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
}
elseif($chosenOption == "10"){
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
}
elseif($chosenOption == "15"){
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
}
elseif($chosenOption == "20"){
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
$mysidia->db->insert("raffle_tickets", array("owner" => $mysidia->user->username));
}
}
//This park picks a winner from the database
if($mysidia->input->post("win")){
$winner = $mysidia->db->select("raffle_tickets", array("owner"), "1 ORDER BY RAND() DESC LIMIT 1")->fetchColumn();
$document->add(new Comment( "{$winner} won {$pool} CURRENCY from the raffle!"));
}
It works, but it's not ideal and the code would get very lengthy if more tickets are wanted (like 50).