Check boxes automatisch aanvinken met voorwaarde

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Remco Borst

Remco Borst

22/01/2009 20:08:00
Quote Anchor link
Hey, ik ben met een project bezig voor school.
Ik moet een soort dating bureau opzetten, leuk project.. maar ik loop tegen een heel leuk probleem.. NOT..

Ik moet bij het bewerken van de klant de gekozen hobby's automatisch laten aanvinken in de checkboxes zodat de luie mensen het zelf niet meer hoeven te doen.
Opzich is dit niet lastig.. ik compare ze gewoon.. maar om een of andere vage reden werkt het niet :S

ik heb in dit geval data nodig uit twee tabellen:

Tabel 1: hobbies
_______________
hobbie_id = PK
hobbie

Tabel 2: hobbiekoppel
_______________
hobbie_id = PK
klant_id = PK

ik voer twee queries uit en lees de resultaten hiervan uit met while loops.

$_GET['klant'] is het klant nummer

iets like:


$get_hobbies = mysql_query("SELECT * FROM hobbiekoppel INNER JOIN hobbies ON hobbiekoppel.hobbie_id=hobbies.hobbie_id WHERE klant_id='".$_GET['klant']."' ");
$get_allhobbies = mysql_query("SELECT * FROM hobbies");

while($row_allhobbies = mysql_fetch_array($get_allhobbies))
{

while($row_hobbies = mysql_fetch_array($get_hobbies))
{
if($row_hobbies['hobbie_id'] == $row_allhobbies['hobbie_id'])
{
// echo de checkbox gechecked..
}
else
{
// echo de checkbox niet gechecked..
}
}
}


Dit is even een voorbeeld.. ik heb de code niet bij me, is examen werk..
Maar ik krijg echt mateloos irritante resultaten met deze manier, ik krijg of het aantal hobbies van de klant maal het aantal hobbies totaal.. of ik krijg alleen maar de hobbies van de klant.. ik weet niet meer wat ik fout doe :S

Als iemand een helder idee heeft laat het alsjeblieft weten!

Alvast bedankt.

Groeten Remco.
 
PHP hulp

PHP hulp

18/04/2024 06:52:52
 
/home/joost

/home/joost

22/01/2009 21:51:00
Quote Anchor link
Ik dacht iets als checked="checked" ;)
mvg Joost.

Edit::
Succes met je examen :)
Gewijzigd op 01/01/1970 01:00:00 door /home/joost
 
Remco Borst

Remco Borst

22/01/2009 22:16:00
Quote Anchor link
Ik heb het opgelost :D
Na ff ploeteren heb ik een opplossing :D haha

ik zal hem natuurlijk even delen voor mensen die hier ook problemen mee hebben gehad.
Ik vroeg me alleen af of die dubbele while in dit geval echt nodig is.. dat is me niet helemaal duidelijk, zou iemand mij dit kunnen vertellen ?
Zonder heb ik hem niet aan de praat gekregen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php

include('dbconnect.php');

$get_allhobbies = mysql_query("SELECT * FROM hobbies");
while($row_allhobbies = mysql_fetch_array($get_allhobbies))
{


    echo $row_allhobbies['hobbie'];
    $get_hobbies = mysql_query("SELECT * FROM hobbiekoppel WHERE klant_id='1' ");
    while($row_hobbies = mysql_fetch_array($get_hobbies))
    {

            if($row_hobbies['hobbie_id'] == $row_allhobbies['hobbie_id'])
            {

                $checked[$row_allhobbies['hobbie_id']] = "checked";
            }

            else
            {

            }        
    }

    if($checked[$row_allhobbies['hobbie_id']] == "checked")
    {

        echo "<input type='checkbox' CHECKED>";
    }

    else
    {
        echo "<input type='checkbox'>";
    }

    echo "<br>";
}



?>


Ik heb wat simpele voorbeeldjes gebruikt om te testen of het werkt natuurlijk.

Mvg,
Remco
 
Remco Borst

Remco Borst

22/01/2009 22:18:00
Quote Anchor link
Quote:
bedankt trouwens, moet wel goed komen ;)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.