Dropdownboxen vullen

Status
Niet open voor verdere reacties.

weswillem

Gebruiker
Lid geworden
8 nov 2011
Berichten
310
Ben bezig met genealogie site.
Mijn vraag is het volgende.
Ik heb 3 tabellen
Tw. Bloedlijn - kinderen - kleinkinderen.
Deze zijn gekoppeld aan elkaar.
Ik heb een hoop foto’s en wil deze koppelen aan de gekozen personen.
Nu wil ik dat wanneer ik iemand heb gekozen in de 1e dropdownbox dat de 2e dropdownbox gevuld wordt met namen kinderen en als ik één van gekozen heb dat de namen kleinkinderen gevuld wordt in dropdownbox 3 en dat de foto’s daarvan zichtbaar worden. Is het mogelijk om bij het verlaten van de 1e box dat automatisch de 2e gevuld wordt enz. zonder gebruik te maken van Form. en $_POST.
 
Je bedoelt interactie met de server, zonder de pagina te herladen? waarschijnlijk wil je dan eens kijken naar AJAX via javascript.
 
Vergeet er bij te vermelden dat er ook een
Tabel foto is gekoppeld aan de diverse
Id’s.
BloedlijnID - foto ouder
KindID , bloedlijnID - foto’s kinderen
KleinkindID, KindID -foto’s kleinkinderen.

Wil het me steeds moeilijker maken, ter lering
 
Laatst bewerkt:
Dat kan je met een JOIN in je query wel bij elkaar trekken. Verder moet je AJAX gebruiken als je dit realtime wilt ophalen na een interactie.
Hiervoor raad ik de jQuery-library aan.
 
een snelle test kan je met wat aanpassingen hiermee een snel resultaat hebben verkrijgen.

$this->DB = PDO database ...


$data = neemdata('van ...');
print '<select>';
print getOptions($data,$key);
print '</select>';
Code:
    public function neemdata($param){
        $return ='';
        $sql = 'SELECT `id` AS `key`, `STATUS` AS `value` FROM `tabelnaam` WHERE ';//
        if($dbStmt = $this->DB->prepare($sql))&&$dbStmt->execute($params)){
                    $res = $dbStmt->fetchAll(\PDO::FETCH_ASSOC);
                    $i=0;
                    foreach ($res as $row){
                        $return[$row['key']]= $row['value'];
                    }
                    @$dbStmt->closeCursor();
                    return $return;     
          }else{
                    return false;
         }
    }
    public function getOptions($items,$keyselected=''){
            $return='';            
            if(isset($items)){
                    foreach($items as $key=>$value){
                        $return.='<option value="'.$key.'" '.($key==$keyselected?'selected ':'').'>'.$value.'</option>';
                    }
            }
            return $return;
        }
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan