MySQL database doorlopen met Javascript variabele

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Irian Vis

Irian Vis

06/01/2012 19:51:37
Quote Anchor link
Beste PHPers,

ik ben bezig een dynamisch gegenereerd formulier te maken. Het idee is dat iemand een optie uit een dropdownvakje kan selecteren en dat dan de volgende opties uit de databse worden opgehaald.

De opties in het tweede vakje zijn dus afhankelijk van de gekozen waarde in het eerste vakje (dit herhaald zich een onbekend aantal keer).

Ik stuur de waarde van het eerste vakje mee naar een Javascript functie die een nieuw vakje aanmaakt. Het probleem is alleen dat ik de databse niet kan doorlopen met deze variabele aangezien deze in Javascript staat en ik deze niet kan overnemenen naar PHP.

Wie kan mij vertellen hoe ik dit het beste kan oplossen?

Bedankt voor alle hulp,

Irian

PS, hier is de code die ik geschreven heb:

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<html>
<head>
<?php
$db_host
    = "";
$db_user    = "";
$db_pass    = "";
$db_database    = "";

mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($db_database);

$i = "1";
?>


<script language="Javascript" type="text/javascript">
<!--
function new_field(mother_id) {
    if (mother_id == "") {
        return;
        }

    var div        = document.getElementById('form');
    var select    = document.createElement("select");
    select.setAttribute("name", <?php echo $i; ?>);
    select.setAttribute("id", <?php echo $i; ?>);
    select.addEventListener ("change", function() {new_field(this.value)}, false);
    div.appendChild(select);

    var option = document.createElement("option");
    option.setAttribute("value", "");
    option.innerHTML = "";
    select.appendChild(option);

    <?php
    $mother_id
    = ?>
mother_id<?php;
    $sql        = "SELECT * FROM wordpress_booking WHERE child_of = '".$mother_id."' ORDER BY id ASC";
    $query        = mysql_query($sql);

    while ($show = mysql_fetch_array($query)) {
        $id    = htmlspecialchars($show['id']);
        $name    = htmlspecialchars($show['name']);
        ?>

        var option = document.createElement("option");
        option.setAttribute("value", "<?php echo$id; ?>");
        option.innerHTML = "<?php echo $name; ?>";
        select.appendChild(option);

        <?php
        }
    $i++;
    ?>

    }
//-->
</script>
</head>

<body>
<div id="form">
</div>

<script language="Javascript" type="text/javascript">
    <!--
    new_field("1");
    //-->
</script>

</body>
</html>
 
PHP hulp

PHP hulp

28/11/2024 13:16:03
 
Noppes Homeland

Noppes Homeland

06/01/2012 19:56:20
Quote Anchor link
Trefwoorden:
- chain slect
- schoonmaakmiddel "ajax" protocol

Neem ook gerust eens een kijkje bij: jquery
 
Irian Vis

Irian Vis

06/01/2012 20:24:27
Quote Anchor link
Dank je wel Noppes,

Ik ken Ajax nog niet, maar ga het nu leren.

Groet,
Irian
Gewijzigd op 08/01/2012 11:03:32 door Irian Vis
 



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.