Meerdere kolomnamen benoemen via INSERT met MySql
IK vroeg mij af of het mogelijk is om meerdere kolomnamen dynamisch te benoemen met MySQL als je een INSERT doet?
Dus:
$insertSQL = sprintf("INSERT INTO (kolomnaam_a, kolomnaam_b, kolomnaam_C, kolomnaam1, kolomnaam_d) VALUES........etc
Kolomnaam1 zou dus oploppend herhaalt moeten worden. Dus dat ik dan het volgende zou krijgen:
$insertSQL = sprintf("INSERT INTO (kolomnaam_a, kolomnaam_b, kolomnaam_C, kolomnaam1, kolomnaam2, kolomnaam3, kolomnaam4, kolomnaam_d) VALUES........etc
De reden dat ik dit zou willen is omdat ik nu op dit moment maar 1 kolom hoef toe te voegen in de tabel en dit dus ook gelijk op de pagina's zal worden doorgevoerd op het scherm en in een formulier.
Nu wil ik deze waarden vanuit het formulier dus in de tabel zetten.
Ik hoop dat iemand mij kan helpen :)
aanvulling: als het gehele script nodig is zal ik deze ook even plaatsen
Gewijzigd op 05/02/2012 22:28:23 door Allan de Bruin
Verdiep je eens in normalisatie.
heb je misschien ergens een voorbeeld?
Maar het kan nog makkelijker.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
$fields = "("
$values = "VALUES ("
foreach ($_POST as $fieldname => $value) {
$fields .= $fieldname . ",";
$values .= "'" . $value . "',";
}
$fields = substr($fields, 0, -1); //laatste komma weghalen
$values = substr($values, 0, -1); // idem
$sql = "INSERT INTO tabelname " . $fields . ") " . $values . ")";
?>
$fields = "("
$values = "VALUES ("
foreach ($_POST as $fieldname => $value) {
$fields .= $fieldname . ",";
$values .= "'" . $value . "',";
}
$fields = substr($fields, 0, -1); //laatste komma weghalen
$values = substr($values, 0, -1); // idem
$sql = "INSERT INTO tabelname " . $fields . ") " . $values . ")";
?>
Voorwaarde is natuurlijk wel dat dat de namen van de invoervelden overeenkomen met de kolomnamen in de tabel.
Gewijzigd op 05/02/2012 23:06:15 door Ger van Steenderen
Ik snap even niet de werking van dit geheel.
Wat ik heb gedaan is de velden als volgt gedefinieerd:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
while ($vraag < $AantalVragen + 1)
{
echo "<INPUT NAME=\"Vraag$vraag\" TYPE=\"hidden\" ";
foreach ($_POST['Vraag'.$vraag++] as $Field)
{
echo "VALUE=\"$Field\" />";
@$totaal += $Field;
}
}
{
echo "<INPUT NAME=\"Vraag$vraag\" TYPE=\"hidden\" ";
foreach ($_POST['Vraag'.$vraag++] as $Field)
{
echo "VALUE=\"$Field\" />";
@$totaal += $Field;
}
}
Aan de hand hiervan worden de waarden uit een vorige pagina hier in een hidden veld geplaatst.
deze wil ik dan in de database plaatsen.
Mijn intentie was ook om de veldnamen over1 te laten komen met de kolomnamen.
Wat vragen:
Als ik jouw script zo bekijk dan is het dus de bedoeling dat ik de velden nu de naam $fieldname moet gaan geven?
Code (php)
Heb je al eens in je HTML gekeken wat er dan terecht komt?
Gewijzigd op 06/02/2012 01:22:41 door Erwin H
Allan de Bruin op 05/02/2012 22:32:35:
maar kan het wel?
heb je misschien ergens een voorbeeld?
heb je misschien ergens een voorbeeld?
Maar.... waarom wil je het? Met een structuur met genummerde kolomnamen wordt het erg lastig om straks nog leuke queries uit te kunnen poepen.
<INPUT NAME="Vraag1" TYPE="hidden" VALUE="1" />
<INPUT NAME="Vraag2" TYPE="hidden" VALUE="2" />
<INPUT NAME="Vraag3" TYPE="hidden" VALUE="3" />
<INPUT NAME="Vraag4" TYPE="hidden" VALUE="4" />
<INPUT NAME="Vraag5" TYPE="hidden" VALUE="5" />
<INPUT NAME="Vraag6" TYPE="hidden" VALUE="6" />
<INPUT NAME="Vraag7" TYPE="hidden" VALUE="7" />
<INPUT NAME="Vraag8" TYPE="hidden" VALUE="8" />
<INPUT NAME="Vraag9" TYPE="hidden" VALUE="9" />
<INPUT NAME="Vraag10" TYPE="hidden" VALUE="10" />
etc tot en met Vraag39 (het aantal kolommen met vragen).
Wat ik precies doe is het volgende:
Een tabel met 39 vragen.
Deze vragen staan in de COMMENTS van het veld in de tabel.
Die roep ik op via:
SHOW FULL COLUMNS FROM tblvragenlijst WHERE Comment > '0'
Dus alleen die velden waar een waarde staat bij Comment zal worden getoond.
Pagina met vragen. Op deze pagina heb ik de vragen uit de tabel.
Deze kunnen worden geselecteerd aan de hand van radioboxjes
Die worden als volgt weergegeven, maal 10
Deze kan de bezoeker de waarden verzenden naar een volgende pagina met een overzicht van de gegeven antwoorden + daar zal de bezoeker nog 3 velden moeten invullen. (naam, email en woonplaats).
Dan is het de bedoeling dat vanaf deze pagina de gegevens in de tabel komen.
Heb ik hier antwoord gegeven op jouw vraag?
Toevoeging op 06/02/2012 01:34:41:
- Aar - op 06/02/2012 01:28:47:
Maar.... waarom wil je het? Met een structuur met genummerde kolomnamen wordt het erg lastig om straks nog leuke queries uit te kunnen poepen.
Maar.... waarom wil je het? Met een structuur met genummerde kolomnamen wordt het erg lastig om straks nog leuke queries uit te kunnen poepen.
nah, ik dacht dat het misschien wel een passende en makkelijke manier was.
Het is alleen een vragenlijst die ik, persoonlijk gezien dan, makkelijk zou kunnen onderhouden door er alleen maar een kolomnaam in te voeren..
Gewijzigd op 06/02/2012 01:32:45 door Allan de Bruin
Allan de Bruin op 06/02/2012 01:32:14:
Heb ik hier antwoord gegeven op jouw vraag?
Ja, behalve dan of je de code die ik quote al hebt getest. Want volgens mij gaat daar nooit uitkomen wat je wilt, als er al iets uitkomt. Je doet namelijk een foreach op een $_POST element dat volgens mij geen array is. Dat kan dus helemaal niet, dat zou een foutmelding moeten opleveren. Of, als het wel een array is, dan krijg je meerdere values in je hidden input. Dat kan ook niet natuurlijk.
Als eerste de pagina met de vragen, met beperkte HTML code
Code (php)
1
2
3
4
5
6
2
3
4
5
6
//database connectie maken om vragen op te halen
mysql_select_db($database_ziv, $ziv);
$query_rsGetVragen = "SHOW FULL COLUMNS FROM tblvragenlijst WHERE Comment > '0'";
$rsGetVragen = mysql_query($query_rsGetVragen, $ziv) or die(mysql_error());
$row_rsGetVragen = mysql_fetch_assoc($rsGetVragen);
$totalRows_rsGetVragen = mysql_num_rows($rsGetVragen);
mysql_select_db($database_ziv, $ziv);
$query_rsGetVragen = "SHOW FULL COLUMNS FROM tblvragenlijst WHERE Comment > '0'";
$rsGetVragen = mysql_query($query_rsGetVragen, $ziv) or die(mysql_error());
$row_rsGetVragen = mysql_fetch_assoc($rsGetVragen);
$totalRows_rsGetVragen = mysql_num_rows($rsGetVragen);
Dan het formulier waar de vragen worden weergegeven:
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
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
70
71
72
73
74
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
70
71
72
73
74
<form method="POST" name="frmVragenLijst" id="frmVragenLijst" action="vragenlijst_stap3.php">
<strong>
<?php if ($totalRows_rsGetInstelling == 0) { // Show if recordset empty ?>
Deze instelling is nog niet geactiveerd door de contactpersoon van de organisatie.
<?php } // Show if recordset empty ?>
</strong>
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="tekst_normaal">
<tr>
<td colspan="2" valign="top"><h1>Vragenlijst: <?php echo $row_rsGetInstelling['InstNaam']; ?></h1></td>
</tr>
<tr>
<td colspan="2" valign="top" class="td_vergelijkingstabel"><?php echo $row_rsGetInstelling['InstAdresStraat']; ?> <?php echo $row_rsGetInstelling['InstAdresNr']; ?>, <?php echo $row_rsGetInstelling['InstPostCijfer']; ?> <?php echo $row_rsGetInstelling['InstPostLetter']; ?> <?php echo $row_rsGetInstelling['InstPlaats']; ?>. Onderdeel van: <a href="Koepelorganisatie-bekijken.php?KoepelId=<?php echo $row_rsGetInstelling['KoepelId']; ?>"><?php echo $row_rsGetInstelling['KoepelNaam']; ?></a></td>
</tr>
<tr>
<td colspan="2" valign="top"> </td>
</tr>
<tr>
<td colspan="2" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr>
<td width="560" valign="top"><strong>Welk cijfer geeft u voor:
<input name="InstId" type="hidden" id="InstId" value="<?php echo $row_rsGetInstelling['InstId']; ?>" />
<input type="hidden" name="AantalVragen" id="AantalVragen" value="<?php echo $totalRows_rsGetVragen ?>" />
</strong></td>
<td align="center" valign="top"><strong> 1</strong></td>
<td align="center" valign="top"><strong> 2</strong></td>
<td align="center" valign="top"><strong> 3</strong></td>
<td align="center" valign="top"><strong> 4</strong></td>
<td align="center" valign="top"><strong> 5</strong></td>
<td align="center" valign="top"><strong> 6</strong></td>
<td align="center" valign="top"><strong> 7</strong></td>
<td align="center" valign="top"><strong> 8</strong></td>
<td align="center" valign="top"><strong> 9</strong></td>
<td align="center" valign="top"><strong> 10</strong></td>
</tr>
<?php do { ?>
<tr onmouseover=style.backgroundColor="#99CC66" onmouseout=style.backgroundColor="#FFFFFF">
<td valign="top"><?php echo htmlentities($row_rsGetVragen['Comment']); ?></td>
<td colspan="10" align="center" valign="top"> <span id="<?php echo $row_rsGetVragen['Field']; ?>">
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="1" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="2" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="3" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="4" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="5" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="6" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="7" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="8" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="9" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="10" />
<span class="radioRequiredMsg">*</span></span>
</td>
</tr>
<script type="text/javascript">
var spryradio1 = new Spry.Widget.ValidationRadio("<?php echo $row_rsGetVragen['Field']; ?>");
</script>
<tr>
<td colspan="11" valign="top" class="td_vergelijkingstabel"><img src="images/pixel.jpg" width="1" height="1" /></td>
</tr>
<?php } while ($row_rsGetVragen = mysql_fetch_assoc($rsGetVragen)); ?>
</table></td>
</tr>
<tr>
<td valign="top"><input type="reset" id="button" value="Formulier opnieuw invullen" /></td>
<td align="right" valign="top"><input type="submit" value="Antwoorden opslaan" /></td>
</tr>
</table>
</form>
<strong>
<?php if ($totalRows_rsGetInstelling == 0) { // Show if recordset empty ?>
Deze instelling is nog niet geactiveerd door de contactpersoon van de organisatie.
<?php } // Show if recordset empty ?>
</strong>
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="tekst_normaal">
<tr>
<td colspan="2" valign="top"><h1>Vragenlijst: <?php echo $row_rsGetInstelling['InstNaam']; ?></h1></td>
</tr>
<tr>
<td colspan="2" valign="top" class="td_vergelijkingstabel"><?php echo $row_rsGetInstelling['InstAdresStraat']; ?> <?php echo $row_rsGetInstelling['InstAdresNr']; ?>, <?php echo $row_rsGetInstelling['InstPostCijfer']; ?> <?php echo $row_rsGetInstelling['InstPostLetter']; ?> <?php echo $row_rsGetInstelling['InstPlaats']; ?>. Onderdeel van: <a href="Koepelorganisatie-bekijken.php?KoepelId=<?php echo $row_rsGetInstelling['KoepelId']; ?>"><?php echo $row_rsGetInstelling['KoepelNaam']; ?></a></td>
</tr>
<tr>
<td colspan="2" valign="top"> </td>
</tr>
<tr>
<td colspan="2" valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr>
<td width="560" valign="top"><strong>Welk cijfer geeft u voor:
<input name="InstId" type="hidden" id="InstId" value="<?php echo $row_rsGetInstelling['InstId']; ?>" />
<input type="hidden" name="AantalVragen" id="AantalVragen" value="<?php echo $totalRows_rsGetVragen ?>" />
</strong></td>
<td align="center" valign="top"><strong> 1</strong></td>
<td align="center" valign="top"><strong> 2</strong></td>
<td align="center" valign="top"><strong> 3</strong></td>
<td align="center" valign="top"><strong> 4</strong></td>
<td align="center" valign="top"><strong> 5</strong></td>
<td align="center" valign="top"><strong> 6</strong></td>
<td align="center" valign="top"><strong> 7</strong></td>
<td align="center" valign="top"><strong> 8</strong></td>
<td align="center" valign="top"><strong> 9</strong></td>
<td align="center" valign="top"><strong> 10</strong></td>
</tr>
<?php do { ?>
<tr onmouseover=style.backgroundColor="#99CC66" onmouseout=style.backgroundColor="#FFFFFF">
<td valign="top"><?php echo htmlentities($row_rsGetVragen['Comment']); ?></td>
<td colspan="10" align="center" valign="top"> <span id="<?php echo $row_rsGetVragen['Field']; ?>">
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="1" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="2" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="3" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="4" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="5" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="6" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="7" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="8" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="9" />
<input type="radio" name="<?php echo $row_rsGetVragen['Field']; ?>[]" value="10" />
<span class="radioRequiredMsg">*</span></span>
</td>
</tr>
<script type="text/javascript">
var spryradio1 = new Spry.Widget.ValidationRadio("<?php echo $row_rsGetVragen['Field']; ?>");
</script>
<tr>
<td colspan="11" valign="top" class="td_vergelijkingstabel"><img src="images/pixel.jpg" width="1" height="1" /></td>
</tr>
<?php } while ($row_rsGetVragen = mysql_fetch_assoc($rsGetVragen)); ?>
</table></td>
</tr>
<tr>
<td valign="top"><input type="reset" id="button" value="Formulier opnieuw invullen" /></td>
<td align="right" valign="top"><input type="submit" value="Antwoorden opslaan" /></td>
</tr>
</table>
</form>
Dan de pagina om de gegevens te tonen en in de database te plaatsen.
Hier zit nog geen INSERT in:
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
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
$vraag = 1;
$AantalVragen = $_POST['AantalVragen']; //aantal vragen tonen
<FORM name="frmAddVragenlijst" ACTION="vragenlijst_stap4_einde.php" METHOD="POST" id="frmAddVragenlijst">
<?php
//formulier velden opstellen om in de tabel te plaatsen
while ($vraag < $AantalVragen + 1)
{
echo "<INPUT NAME=\"Vraag$vraag\" TYPE=\"hidden\" ";
foreach ($_POST['Vraag'.$vraag++] as $Field)
{
echo "VALUE=\"$Field\" />";
@$totaal += $Field;
}
}
//ipadres ophalen van de invullen zodat deze niet twee keer de lijst kan invullen.
if (!empty($_SERVER["HTTP_CLIENT_IP"]))
{
//check for ip from share internet
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
elseif (!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
{
// Check for the Proxy User
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
else
{
$ip = $_SERVER["REMOTE_ADDR"];
}
?>
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="tekst_normaal">
<tr>
<td colspan="3" valign="top"><h1>Vragenlijst: <?php echo $row_rsGetInstelling['InstNaam']; ?></h1></td>
</tr>
<tr>
<td colspan="3" valign="top"><?php echo $row_rsGetInstelling['InstAdresStraat']; ?> <?php echo $row_rsGetInstelling['InstAdresNr']; ?>, <?php echo $row_rsGetInstelling['InstPostCijfer']; ?> <?php echo $row_rsGetInstelling['InstPostLetter']; ?> <?php echo $row_rsGetInstelling['InstPlaats']; ?>. Onderdeel van: <a href="Koepelorganisatie-bekijken.php?KoepelId=<?php echo $row_rsGetInstelling['KoepelId']; ?>"><?php echo $row_rsGetInstelling['KoepelNaam']; ?></a> </td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
<tr>
<td colspan="3" valign="middle">Uw gemiddelde cijfer is een
<?php
$totaalpunten = $totaal;
$Gemiddeld = $totaal / $AantalVragen;
echo "<span class=GegevenCijfer>" . number_format($Gemiddeld, 1, ',', '') . "</span>";
echo "<br />Totaal alles opgeteld: ". $totaalpunten . " gedeeld door ". $AantalVragen . " vragen";
?></td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
<tr>
<td colspan="3" valign="top">Om deze vragenlijst compleet te maken vragen wij u alleen nog de volgende gegevens:</td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
<tr>
<td valign="top">Uw naam</td>
<td colspan="2" valign="top"><span id="sprytextfield2">
<input name="InvullerNaam" type="text" id="InvullerNaam" size="50" maxlength="255" />
<span class="textfieldRequiredMsg">*</span></span></td>
</tr>
<tr>
<td width="17%" valign="top">Uw emailadres</td>
<td colspan="2" valign="top"><span id="sprytextfield1">
<input name="InvullerEmailadres" type="text" id="InvullerEmailadres" size="50" maxlength="255" />
<span class="textfieldRequiredMsg">*</span></span></td>
</tr>
<tr>
<td valign="top">Uw woonplaats</td>
<td colspan="2" valign="top"><span id="sprytextfield3">
<input name="InvullerWoonplaats" type="text" id="InvullerWoonplaats" size="50" maxlength="255" />
<span class="textfieldRequiredMsg">*</span></span></td>
</tr>
<tr>
<td valign="top">Aanvullingen</td>
<td colspan="2" valign="top"><span id="sprytextarea1">
<textarea name="VragenOverigeInformatie" id="VragenOverigeInformatie" cols="45" rows="5"></textarea><br />
U heeft al <span id="countsprytextarea1"> </span> karakters ingevuld.<span class="textareaMaxCharsMsg">U kunt maximlaal 5000 karakters invullen.</span></span></td>
</tr>
<tr>
<td valign="top">
<input name="InstId" type="hidden" id="InstId" value="<?php echo $row_rsGetInstelling['InstId']; ?>" />
<input name="InvullerIpadres" type="hidden" id="InvullerIpadres" value="<?php echo $ip ?>" />
<input name="KoepelId" type="hidden" id="KoepelId" value="<?php echo $row_rsGetInstelling['KoepelId']; ?>" />
<input name="VraagStatus" type="hidden" id="VraagStatus" value="0" />
<input name="AantalVragen" type="hidden" id="AantalVragen" value="<?php echo $AantalVragen ?>" /></td>
<td colspan="2" valign="top"> </td>
</tr>
<tr>
<td valign="top"> </td>
<td width="37%" align="right" valign="top"><input type="submit" value="Vragenlijst afronden" /></td>
<td width="46%" valign="top"> </td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
</table>
</FORM>
$AantalVragen = $_POST['AantalVragen']; //aantal vragen tonen
<FORM name="frmAddVragenlijst" ACTION="vragenlijst_stap4_einde.php" METHOD="POST" id="frmAddVragenlijst">
<?php
//formulier velden opstellen om in de tabel te plaatsen
while ($vraag < $AantalVragen + 1)
{
echo "<INPUT NAME=\"Vraag$vraag\" TYPE=\"hidden\" ";
foreach ($_POST['Vraag'.$vraag++] as $Field)
{
echo "VALUE=\"$Field\" />";
@$totaal += $Field;
}
}
//ipadres ophalen van de invullen zodat deze niet twee keer de lijst kan invullen.
if (!empty($_SERVER["HTTP_CLIENT_IP"]))
{
//check for ip from share internet
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
elseif (!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
{
// Check for the Proxy User
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
else
{
$ip = $_SERVER["REMOTE_ADDR"];
}
?>
<table width="100%" border="0" cellpadding="2" cellspacing="0" class="tekst_normaal">
<tr>
<td colspan="3" valign="top"><h1>Vragenlijst: <?php echo $row_rsGetInstelling['InstNaam']; ?></h1></td>
</tr>
<tr>
<td colspan="3" valign="top"><?php echo $row_rsGetInstelling['InstAdresStraat']; ?> <?php echo $row_rsGetInstelling['InstAdresNr']; ?>, <?php echo $row_rsGetInstelling['InstPostCijfer']; ?> <?php echo $row_rsGetInstelling['InstPostLetter']; ?> <?php echo $row_rsGetInstelling['InstPlaats']; ?>. Onderdeel van: <a href="Koepelorganisatie-bekijken.php?KoepelId=<?php echo $row_rsGetInstelling['KoepelId']; ?>"><?php echo $row_rsGetInstelling['KoepelNaam']; ?></a> </td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
<tr>
<td colspan="3" valign="middle">Uw gemiddelde cijfer is een
<?php
$totaalpunten = $totaal;
$Gemiddeld = $totaal / $AantalVragen;
echo "<span class=GegevenCijfer>" . number_format($Gemiddeld, 1, ',', '') . "</span>";
echo "<br />Totaal alles opgeteld: ". $totaalpunten . " gedeeld door ". $AantalVragen . " vragen";
?></td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
<tr>
<td colspan="3" valign="top">Om deze vragenlijst compleet te maken vragen wij u alleen nog de volgende gegevens:</td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
<tr>
<td valign="top">Uw naam</td>
<td colspan="2" valign="top"><span id="sprytextfield2">
<input name="InvullerNaam" type="text" id="InvullerNaam" size="50" maxlength="255" />
<span class="textfieldRequiredMsg">*</span></span></td>
</tr>
<tr>
<td width="17%" valign="top">Uw emailadres</td>
<td colspan="2" valign="top"><span id="sprytextfield1">
<input name="InvullerEmailadres" type="text" id="InvullerEmailadres" size="50" maxlength="255" />
<span class="textfieldRequiredMsg">*</span></span></td>
</tr>
<tr>
<td valign="top">Uw woonplaats</td>
<td colspan="2" valign="top"><span id="sprytextfield3">
<input name="InvullerWoonplaats" type="text" id="InvullerWoonplaats" size="50" maxlength="255" />
<span class="textfieldRequiredMsg">*</span></span></td>
</tr>
<tr>
<td valign="top">Aanvullingen</td>
<td colspan="2" valign="top"><span id="sprytextarea1">
<textarea name="VragenOverigeInformatie" id="VragenOverigeInformatie" cols="45" rows="5"></textarea><br />
U heeft al <span id="countsprytextarea1"> </span> karakters ingevuld.<span class="textareaMaxCharsMsg">U kunt maximlaal 5000 karakters invullen.</span></span></td>
</tr>
<tr>
<td valign="top">
<input name="InstId" type="hidden" id="InstId" value="<?php echo $row_rsGetInstelling['InstId']; ?>" />
<input name="InvullerIpadres" type="hidden" id="InvullerIpadres" value="<?php echo $ip ?>" />
<input name="KoepelId" type="hidden" id="KoepelId" value="<?php echo $row_rsGetInstelling['KoepelId']; ?>" />
<input name="VraagStatus" type="hidden" id="VraagStatus" value="0" />
<input name="AantalVragen" type="hidden" id="AantalVragen" value="<?php echo $AantalVragen ?>" /></td>
<td colspan="2" valign="top"> </td>
</tr>
<tr>
<td valign="top"> </td>
<td width="37%" align="right" valign="top"><input type="submit" value="Vragenlijst afronden" /></td>
<td width="46%" valign="top"> </td>
</tr>
<tr>
<td colspan="3" valign="top"> </td>
</tr>
</table>
</FORM>
Ik hoop dat ik hier wat meer inzicht heb kunnen geven in waar ik naar op zoek ben.
Gewijzigd op 06/02/2012 09:36:22 door Allan de Bruin
Je slaat een gegeven op in de comment van de kolom. Die is daar helemaal voor bedoeld.
Dus als je dat gegeven zou moeten wijzigen moet je de tabel wijzigen (met ALTER TABLE). In SQLite kan dat zelfs niet.
Ten tweede pleur je alle info in 1 tabel
Ga nu eerst je database is goed opzetten, als je op deze manier doorgaat vraag je om problemen. Hint: tabel voor vragen, tabel voor invullers en een tabel voor antwoorden.
Gewijzigd op 06/02/2012 10:02:43 door Ger van Steenderen
Ik denk dat ik het dan helemaal om ga gooien. Is nog best complex :)
Bedankt iig voor je tijd en de moeite. nog goede bronnen over het opzetten van een strakke db?