SQL statement uitvoeren na keuze uit dropdown

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Wim Selles

Wim Selles

15/12/2008 11:00:00
Quote Anchor link
Heren, dames,

Ik heb een vraag over het volgende.

Ik heb een pagina waar een dropdownmenu op staat. Door hier een keuze te maken, verschijnt een nieuwe dropdownbox (dit heb ik gedaan a.d.h.v. http://www.w3schools.com/php/php_ajax_database.asp). Nu heb ik op deze pagina een lege tabel staan welke te sorteren is (d.m.v. jQuery Tablesorter).

Nu wil ik graag het volgende. De tabel die op de pagina staat dient gevuld te worden naar aanleiding van de keuze die ik maak in het 2e dropdownmenu. Ik weet dat dit moet met Ajax, maar ik zou niet weten hoe ik het voor elkaar kan krijgen.

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
<?php
// wat ik wil is dit, eerst zie je een dropdownmenu, menu1
?>

<select name="menu1" onchange="showKeuze2(this.value)">
    <option value="a">Keuze 1</option>
</select>
<?php
// de waarde van Keuze 1, uit de vorige dropdown, zorgt er voor dat Keuze 2 wordt getoond
?>

<div id="Keuze2">
    <select name="menu2">
        <option value="ab">Keuze 2</option>
    </select>
</div>
<?php
// de waarde "ab" uit keuze 2 wordt gebruikt voor het vullen van de tabel
$waarde='ab';
$sql="SELECT * FROM table WHERE value='$waarde'";
$res=mysql_query($sql);
?>

<table>
    <tr>
        <td><?php echo $res['vulling'];?></td>
    </tr>
</table>


Iemand een idee, tnx in advance
 
PHP hulp

PHP hulp

24/11/2024 23:49:26
 

15/12/2008 13:19:00
Quote Anchor link
$waarde='ab';
$sql="SELECT * FROM table WHERE value='".$waarde."'";
$query=mysql_query($sql);
while($res = mysql_fetch_array($query))
{
echo '<table>
<tr>
<td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $res['vulling'];?>
</td>
</tr>
</table>';
}

Zoiets? Let trouwens even op, variabelen buiten quotes en bevelig je input... SQL injecties zijn zo gedaan...
 
Wim Selles

Wim Selles

15/12/2008 13:27:00
Quote Anchor link
Ha Chris,

Bedankt voor je reactie, maar ik denk dat ik mijn vraag misschien niet helder heb geformuleerd.

De SQL mag pas uitgevoerd worden als keuze 2 is gemaakt én er dient geen page refresh plaats te vinden om de tabel gevuld te krijgen.

Op de manier zoals jij hem voorsteld moet er wel een pagerefresh komen.
 

15/12/2008 15:04:00
Quote Anchor link
Nee, gewoon een Ajax Request?
 
Wim Selles

Wim Selles

15/12/2008 20:27:00
Quote Anchor link
Ha die Chris,

Ik heb de oplossing gevonden, het was even zoeken, maar dan heb je ook wat zeggen ze.

D.m.v. mijn laatste dropdown riep ik een ajax functie aan waarbij dit onderdeel ook voorkwam.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
function stateChangedTable()
{
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    {
         document.getElementById("showTable").innerHTML=xmlHttp.responseText
    }
}


Hiermee werd de tabel, die ik eerst in een andere file had gestopt zoals in het voorbeeld van w3schools, getoond op de pagina. Om de tabel die gegenereerd was sorteerbaar te maken diende ik de sorteer functie na het uitgenereren van de tabel te laten plaats vinden. Aangezien ik werk met Jquery op mijn site kwam het e rzo uit te zien:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
function stateChangedTable()
{
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    {
    document.getElementById("showTable").innerHTML=xmlHttp.responseText
        $("#machine-overview").dataTable();
    }
}


Hartelijk dank voor de reactie.
 



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.