Jump to content

How can you set a unique variable for each value in an array?


Recommended Posts

I have a set of 80 checkboxes, 1 to 10 of them will be posted.

This creates an array.

 

I was able to see the values by using this:

if (isset($_POST['checkbox'])) {
echo "Playing Numbers ";
foreach($_POST['checkbox'] as $checkbox){
echo  $checkbox . " ";
}

 

Now I'd like to use those values to run SQL select statements. But I don't know how to reference each checkbox value.

I've tried $checkbox[0] but that doesn't seem to work

Is there a way to assign something like

$num1 = $checkbox[0]

$num2 = $checkbox[1]

$num3 = $checkbox[2]

... etc..

Obviously that doesn't work but that is what I was thinking.

 

Or is there a way to reference each checkbox in a SQL select statement like...

$quer=mysql_query("SELECT *
FROM june122011
WHERE $checkbox[0] IN (`A`,`B`,`C`,`D`,`E`,`F`,`G`,`H`,`I`,`J`,`K`,`L`,`M`,`N`,`O`,`P`,`Q`,`R`,`S`,`T`)
AND   $checkbox[1] IN (`A`,`B`,`C`,`D`,`E`,`F`,`G`,`H`,`I`,`J`,`K`,`L`,`M`,`N`,`O`,`P`,`Q`,`R`,`S`,`T`)
AND Game_Date ='$select'");

 

Here you can see I'm getting the values.. just don't know how to put them into a variable so I can use it to run the query.

workingonit.gif

 

any thoughts, ideas is appreciated.

Link to comment
Share on other sites

Try this:

 

$where = '';

$range = implode(',',range('A','T'));

foreach($_POST['checkbox'] as $checkbox)
{
$where .= "'" . $checkbox . "' IN (" . $range . ") AND ";
}

$where .= "Game_Date='" . $select . "'";

$query = mysql_query("SELECT * FROM june122011 " . $where);

Link to comment
Share on other sites

Thanks for the reply,

I think I understand most of that,

It looked like though it would only process 1 number at a time. Unless I looked at it wrong.

 

 

While I need it to check the all number selected in the checkboxs so it would have to have up to 9 AND statements in the select.

Where checkbox[0] AND checkbox[1] etc.... That why I was hoping to be able to extract each checkbox value and turn them into seperate variables so I could write a case statement based on how many checkboxes were selected and then the 10 queries.

 

 

That said I did try to run it with just 1 number and got an error

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\PhpStuff\keno.php on line 90

I used this code to test the query:

$where = '';
$range = implode(',',range('A','T'));
foreach($_POST['checkbox'] as $checkbox)
{
$where .= "'" . $checkbox . "' IN (" . $range . ") AND ";
}
$where .= "Game_Date='" . $select . "'";
$query = mysql_query("SELECT * FROM june122011 " . $where);
$results = mysql_fetch_array($query);
While ($results = mysql_fetch_array($query)) {
echo "$results[Game_Id]";
}

 

Link to comment
Share on other sites

Thank you both,

 

redixx that example was great.

 

PFMaBiSmAd after following your advise I was finally able to get the query to execute correctly.

 

I ended up with this in working order. Just a few more things to add now.

$where = '';
$range = implode(',',range('A','T'));
foreach($_POST['checkbox'] as $checkbox)
{
$where .= "'" . $checkbox . "' IN (" . $range . ") AND ";
}
$where .= "Game_Date='" . $select . "'";
$chunk1 ="SELECT * FROM june122011 Where ";
$query = $chunk1 . $where;
$doit=mysql_query($query);
$results=mysql_fetch_array($doit);
$num_rows = mysql_num_rows($doit);
$adjustedvalue = $num_rows-1;
echo "<table><br>You would have won <font color='red'> $adjustedvalue times</font>";
While ($results = mysql_fetch_array($doit)) {
echo "<tr><td>$results[GameID]</td></tr>";
}
echo "</tabele>";

 

Many thanks for all the help.

 

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.