Jump to content

Archived

This topic is now archived and is closed to further replies.

chazlink

Help Populating Checkboxes with data from mySQL array

Recommended Posts

Hello all,

I have a php form for a school program that teachers use to apply to teach in the program.  During the application process, the applicant is asked to designate their specialty.  For this, they can check up to two checkboxes for their specialty (i.e. biology, chemistry or geology,volcanology). 

Later on, I have an 'Edit Details' page where the applicant can log back in, change their address, e-mail, etc., and their specialty.  I am trying to get the checkboxes that they chose during their initial application to be "checked" already for them when they get to this page.  My problem is, this isn't necessarily a 1 to 1 relationship. 

Here is what I have so far...

The initial form is:
-----------------------------------------------------------------------------------------------------------------------------
[code=php:0]
<input type="checkbox" f=1 name="discipline_array[]" value="Science Education" onClick="y(this)">
    Science Education<br>
&nbsp;
    <input type="checkbox" f=1 name="discipline_array[]" value="Space Physics - Aeronomy - Planetary Science" onClick="y(this)">
    Space Physics/Aeronomy/Planetary Science <br>
&nbsp;
    <input type="checkbox" f=1 name="discipline_array[]" value="Volcanology - Geochemistry - Petrology" onClick="y(this)">
    Volcanology/Geochemistry/Petrology<br>
[/code]
--------------------------------------------------------------------------------------------------------------------------------


So the code:
---------------------------------------------------------------------------------------------------------------------------------
[code=php:0]
if ($discipline_array == "Volcanology - Geochemistry - Petrology") {
?>
  <input type="checkbox" name="discipline_array" value="Volcanology - Geochemistry - Petrology" checked/> Volcanology - Geochemistry - Petrology
<?php } else { ?> 
  <input type="checkbox" name="discipline_array" value="Volcanology - Geochemistry - Petrology" /> Volcanology - Geochemistry - Petrology
<?php } ?>
[/code]
--------------------------------------------------------------------------------------------------------------------------------


works fine, IF they have only chosen Volcanology - Geochemistry - Petrology as their specialty.  If they have chosen 2 however, it will not work.  I know I can write nested elseif statement, but with around 10 specialties, that seems inefficient at best.

Can anyone help me out here?  Any assistance anyone could provide would be greatly appreciated.  Thank you so much for your time.

-chaz

Share this post


Link to post
Share on other sites
Ok so I answered my own question...


For anyone who may be interested...

[code]
<?
$discipline_array=row['discipline'];  //populated from mySQL database
echo ' <input type="checkbox" name="discipline_array[]" value="Geography"';
if (strpos($discipline_array, 'Geography') !== false) {
echo ' checked="checked"';
}
echo " /> Geography\n <br>";
?>
[/code]


f'ing boom

-chaz

Share this post


Link to post
Share on other sites

×

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.