Hoe optellen met MySql Select opties en waardes?
Hoe zou ik dat het beste en makkelijkste aan kunnen pakken?
Code (php)
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
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
<tr>
<td><b>Nummer 1:</b></td>
<td>
<select name="nummer1">
<?php
$query = mysql_query("SELECT `stelling`, `opties` FROM `test1` WHERE `type` = 'nummer1' ORDER BY `id` ASC");
while($row = mysql_fetch_object($query)){
{
$opties = number_format($row->opties, 2, ',', '.');
}
echo "<option value=\"$row->stelling\">$row->stelling $opties</option>";
}
?>
</select>
</td>
</tr>
<tr>
<td><b>Nummer 2:</b></td>
<td>
<select name="nummer2">
<?php
$query = mysql_query("SELECT `stelling`, `opties` FROM `test2` WHERE `type` = 'nummer2' ORDER BY `id` ASC");
while($row = mysql_fetch_object($query)){
{
$opties = number_format($row->opties, 2, ',', '.');
}
echo "<option value=\"$row->stelling\">$row->stelling $opties</option>";
}
?>
</select>
</td>
</tr>
Gewijzigd op 02/05/2012 21:24:22 door J L
Gewijzigd op 02/05/2012 21:23:27 door Noppes Homeland
Gewijzigd op 02/05/2012 21:27:21 door J L
In dat laatste geval zou je volgens mij eens naar javascript kunnen kijken.
Beste is niet per definitie het gemakkelijkst:
zoals je nu je script hebt lijkt het voor jou misschien makkelijk, maar niet het beste
Wat je script betreft:
Hoeveel nummers ga je aanmaken? en dan voor elke een aparte query?
backtics beter niet te gebruiken in je query. test1, test2, lijken me geen goede tabelnamen (alleen al vanwege de nummering).
Waar is je foutafhandeling?
PHP (echo) ' gebruiken, in HTML " --> scheelt je al die \ (en maakt het compacter, beter leesbaar en minder kans op fouten).
Toevoeging op 02/05/2012 21:27:30:
J L op 02/05/2012 21:26:25:
Het script werkt prima.
En daarom is het goed?!?
Het is alleen ter informatie om het totaal vak te laten zien. Het is dus niet van belang om het zo fantastisch mogelijk te doen. Het liefst de makkelijkste manier.
Via Javascript zou het misschien met onChange kunnen, maar heb geen idee hoe ik dat aan zou moeten pakken. Het liefst met PHP.
Toevoeging op 02/05/2012 21:37:21:
Obelix en Idefix op 02/05/2012 21:27:02:
Wat je script betreft:
Hoeveel nummers ga je aanmaken? en dan voor elke een aparte query?
backtics beter niet te gebruiken in je query. test1, test2, lijken me geen goede tabelnamen (alleen al vanwege de nummering).
Waar is je foutafhandeling?
Hoeveel nummers ga je aanmaken? en dan voor elke een aparte query?
backtics beter niet te gebruiken in je query. test1, test2, lijken me geen goede tabelnamen (alleen al vanwege de nummering).
Waar is je foutafhandeling?
Het bestaat al uit 8 nummers. Test1 en 2 zijn zoals de namen het al vermoeden test namen.
De fouthandeling heb ik hier niet gepost, want daar heb ik geen vragen over.
De makkelijkste manier is: 1 query en een fatsoenlijk stukje code!
Noppes Homeland op 02/05/2012 21:39:48:
De makkelijkste manier is: 1 query en een fatsoenlijk stukje code!
Je ziet hier maar een miniem gedeelte van de gehele code.
En nee 1 query is niet mogelijk.
Gewijzigd op 02/05/2012 21:42:54 door J L
Wat jij wilt is ongeveer 15 net gecodeerde regels... daar ligt voor jouw de uitdaging.
Als je niet alle relevante code laat zien, krijg je ook nooit een relevant antwoord.
Noppes Homeland op 02/05/2012 21:47:28:
1 query is wel mogelijk, alleen jouw blikveld is zodanig dat je dat niet ziet.
Wat jij wilt is ongeveer 15 net gecodeerde regels... daar ligt voor jouw de uitdaging.
Wat jij wilt is ongeveer 15 net gecodeerde regels... daar ligt voor jouw de uitdaging.
Je kent de 99,99% van de rest van het script niet. Probeer eens in te gaan op de content in plaats van bijzaken waarover ik mijzelf niet ga verantwoorden en tijd ga verspillen om externe punten uit te leggen terwijl mijn vraag daar totaal niet om draait.
Gewijzigd op 02/05/2012 22:01:12 door J L
Quote:
Je kent de 99,99% van de rest van het script niet.
Dat hoeft ook niet, want hetgeen je gepost hebt is al herhalende code... wat terug gebracht kan worden naar 1 derde van het aantal regels wat je gepost hebt.
Wees dus niet zo eigenwijs, verruim je blikveld en probeer het eens met 1 query.
Voor de rest is er al geoppert dat je een poging kan doen om het client site met javascript op te lossen, maar je dient wel in je achterhoofd te hebben dat dat nu net uit kan staan.
J L op 02/05/2012 21:35:10:
Het bestaat al uit 8 nummers. Test1 en 2 zijn zoals de namen het al vermoeden test namen.
En als het straks 7 of 9 wordt? Ga je dan alle code nalopen aanpassen?
Waarom in code met testnamen gaan werken? Ga je straks het hele script herschrijven met 'echte' namen?
Noppes is niet altijd even vriendelijk in zijn woordkeuze, maar ook ik heb het idee dat je onnodig veel code gebruikt en niet flexibel bent als er iets zou wijzigen.