Jump to content

Recommended Posts

I have a list of checkboxes set up as a form that stores the data to a database cell in a comma separated string:

For example: "12,13,18,110,118,21,28,31"

 

Each checkbox has a name of "categories" with different values.  What I'd like to do is the following:

 

1) Extract the data from the database

2) Separate each number it into an individual array value

3) Make the checkboxes in categories.php reflect the selected or non-selected state, based upon the results from the database (selected being the numbers in the database)

 

Step 1 - I know how to do.

Step 2 - I assume I need to use the explode function, no?

Step 3 - Not a clue....

 

Below is the categories.php file, which I'm assuming is the program I need to add to.

 

<?php
include("includes/misc.inc");
include("includes/connection.inc");
?>
<table>
<tr>
	<td>
    <strong>1. ALIMENTOS</strong><br>
    <input type="checkbox" name="categories" value="11">1.1 - AGRO<br>
    <input type="checkbox" name="categories" value="12">1.2 - INDUSTRIA<br><br>
	<strong>2. AMBIENTE</strong><br>
    <input type="checkbox" name="categories" value="21">2.1 - Ecología<br>
    <input type="checkbox" name="categories" value="22">2.2 - Energía<br>
    <input type="checkbox" name="categories" value="23">2.3 - Urbanismo<br><br>
    <strong>3. CIENCIA: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="31">3.1 - Biológicas<br>
    <input type="checkbox" name="categories" value="32">3.2 - Ciencias Todas<br>
    <input type="checkbox" name="categories" value="33">3.3 - De la Salud<br>
    <input type="checkbox" name="categories" value="34">3.4 - Duras<br>
    <input type="checkbox" name="categories" value="35">3.5 - Sociales<br><br>
    <strong>4. COMUNICACIÓN: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="41">4.1 - Medios<br>
    <input type="checkbox" name="categories" value="42">4.2 - Transporte<br><br>
    <strong>5. CULTURA: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="51">5.1 - Antropología Cultural<br>
    <input type="checkbox" name="categories" value="52">5.2 - Arte y Espectáculo<br>
    <input type="checkbox" name="categories" value="53">5.3 - Educación<br><br>
    <strong>6. ECONOMÍA: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="61">6.1 - MACRO<br>
    <input type="checkbox" name="categories" value="611">6.1.1 - ma Crédito y Finanzas<br>
    <input type="checkbox" name="categories" value="612">6.1.2 - ma Expo Impo<br>
    <input type="checkbox" name="categories" value="613">6.1.3 - ma Impuestos<br>
    <input type="checkbox" name="categories" value="614">6.1.4 - ma Inversiones<br>
    <input type="checkbox" name="categories" value="615">6.1.5 - ma Marketing<br>
    <input type="checkbox" name="categories" value="616">6.1.6 - ma Panorama<br>
    <input type="checkbox" name="categories" value="617">6.1.7 - ma Tendencias<br>
    <input type="checkbox" name="categories" value="618">6.1.8 - ma Teorías<br>
    <input type="checkbox" name="categories" value="62">6.2 - ma x Zona<br>
    <input type="checkbox" name="categories" value="621">6.2.1 - mi Empresas<br>
    <input type="checkbox" name="categories" value="622">6.2.2 - mi Capacitación<br>
    <input type="checkbox" name="categories" value="623">6.2.3 - mi Marketing<br>
    <input type="checkbox" name="categories" value="624">6.2.4 - mi Panorama<br>
    <input type="checkbox" name="categories" value="625">6.2.5 - mi Tendencias<br><br>
    <strong>7. JURÍDICA: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="71">7.1 - Comercial<br>
    <input type="checkbox" name="categories" value="72">7.2 - Constitucional y Varios<br>
    <input type="checkbox" name="categories" value="73">7.3 - Familia<br>
    <input type="checkbox" name="categories" value="74">7.4 - Laboral<br>
    <input type="checkbox" name="categories" value="75">7.5 - Penal<br><br>
    <strong>8. POLÍTICA: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="81">8.1 - Elecciones 2007<br>
    <input type="checkbox" name="categories" value="82">8.2 - Estado y Planificación<br>
    <input type="checkbox" name="categories" value="83">8.3 - Gobierno Nacional<br>
    <input type="checkbox" name="categories" value="84">8.4 - Internacionales<br>
    <input type="checkbox" name="categories" value="85">8.5 - Noticias<br>
    <input type="checkbox" name="categories" value="86">8.6 - Partidos<br>
    <input type="checkbox" name="categories" value="87">8.7 - Politica Regional<br><br>
    <strong>9. SALUD: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="91">9.1 - Calidad de Vida SA<br>
    <input type="checkbox" name="categories" value="92">9.2 - Conceptual<br>
    <input type="checkbox" name="categories" value="93">9.3 - Institucional<br>
    <input type="checkbox" name="categories" value="94">9.4 - Medicina<br>
    <input type="checkbox" name="categories" value="95">9.5 - Panorama<br><br>
    <strong>10. SOCIOLOGÍA: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="101">10.1 - Calidad de Vida SO<br>
    <input type="checkbox" name="categories" value="102">10.2 - Clases<br>
    <input type="checkbox" name="categories" value="103">10.3 - Control Social<br>
    <input type="checkbox" name="categories" value="104">10.4 - Demografía<br>
    <input type="checkbox" name="categories" value="105">10.5 - Economía Social<br>
    <input type="checkbox" name="categories" value="106">10.6 - Futuro CF<br>
    <input type="checkbox" name="categories" value="107">10.7 - Género<br>
    <input type="checkbox" name="categories" value="108">10.8 - Globalización<br>
    <input type="checkbox" name="categories" value="109">10.9 - Historia Toda<br>
    <input type="checkbox" name="categories" value="1010">10.10 - Juventud<br>
    <input type="checkbox" name="categories" value="1011">10.11 - Modas<br>
    <input type="checkbox" name="categories" value="1012">10.12 - Modernidad PosModernidad<br>
    <input type="checkbox" name="categories" value="1013">10.13 - ONG<br>
    <input type="checkbox" name="categories" value="1014">10.14 - Religión<br>
    <input type="checkbox" name="categories" value="1015">10.15 - Seguridad<br>
    <input type="checkbox" name="categories" value="1016">10.16 - Sociología<br>
    <input type="checkbox" name="categories" value="1017">10.17 - Trabajo<br><br>
    <strong>11. HERRAMIENTAS: SU DESARROLLO</strong><br>
    <input type="checkbox" name="categories" value="111">11.1 - ABC<br>
    <input type="checkbox" name="categories" value="112">11.2 - Anita<br>
    <input type="checkbox" name="categories" value="113">11.3 - Bibliografía<br>
    <input type="checkbox" name="categories" value="114">11.4 - Calendario 2007<br>
    <input type="checkbox" name="categories" value="115">11.5 - Clientes<br>
    <input type="checkbox" name="categories" value="116">11.6 - Gentes<br>
    <input type="checkbox" name="categories" value="117">11.7 - Medios<br>
    <input type="checkbox" name="categories" value="118">11.8 - Personal<br>
    <input type="checkbox" name="categories" value="119">11.9 - Tecnologís<br>
    <input type="checkbox" name="categories" value="1110">11.10 - Tema del...<br>
    <input type="checkbox" name="categories" value="1111">11.11 - Tendencias<br>
    <input type="checkbox" name="categories" value="1112">11.12 - Teorías<br>
    </td>
  </tr>
</table>

yikes.  well, your friend here is going to be the in_array(needle, haystack)  function.  if you could find a way to dynamically generate those fields, your task would be easy.  otherwise what you are looking at is a lot of tedious work.

anyway, you are going to need something along the lines of the following in each checkbox (assuming $userprefs is the array from the database)

 

<input type="checkbox" <?php echo (in_array("12", $userprefs)) ? "checked=\"checked\"" : ""; ?> value="12" /> 1.2: blah blah...

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.