Jump to content


Photo

Help Populating Checkboxes with data from mySQL array


  • Please log in to reply
1 reply to this topic

#1 chazlink

chazlink
  • New Members
  • Pip
  • Newbie
  • 2 posts

Posted 03 July 2006 - 05:05 PM

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:
-----------------------------------------------------------------------------------------------------------------------------
<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>
--------------------------------------------------------------------------------------------------------------------------------


So the code:
---------------------------------------------------------------------------------------------------------------------------------
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 } ?>
--------------------------------------------------------------------------------------------------------------------------------


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

#2 chazlink

chazlink
  • New Members
  • Pip
  • Newbie
  • 2 posts

Posted 03 July 2006 - 07:17 PM

Ok so I answered my own question...


For anyone who may be interested...

<?
$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>";
?>


f'ing boom

-chaz




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users