gegevens opslaan
<table border="1" bordercolor="#666666" cellpadding="0" cellspacing="0" width="75%">
<tr>
<td background="images/bg.bmp"><center><b><a href="?p=beheer">Beheer</a> - Nieuws Toevoegen</b></center></td>
</tr>
<tr>
<td>
<form method="POST" action="">
<table border="0" width="100%">
<tr>
<td width="50%">Titel</td><td width="50%"><input type="text" name="naam" size="36"></td>
</tr>
<tr>
<td width="50%">Nieuws</td><td width="50%"><textarea rows="5" name="nieuws" cols="20"></textarea></td>
</tr>
<tr>
<td width="50%">Datum</td><td width="50%"><input type="datum" name="datum" size="36"></td>
</tr>
<tr>
<td width="50%"></td><td width="50%"><input type="submit" value="Verzenden" name="verzenden"><input type="reset" value="Opnieuw" name="reset"></td>
</tr>
</table>
</form>
Code (php)
1
2
3
4
2
3
4
<?php
$query="INSERT INTO nieuws (naam, nieuws, datum) VALUES ('".$_POST['naam']."', '".$_POST['nieuws']."', '".$_POST['datum']."')";
mysql_query($query) or die (mysql_error());
?>
$query="INSERT INTO nieuws (naam, nieuws, datum) VALUES ('".$_POST['naam']."', '".$_POST['nieuws']."', '".$_POST['datum']."')";
mysql_query($query) or die (mysql_error());
?>
</td>
</tr>
</table>
Maar als ik dan de gevgevens intyp en op verzenden klik dan slaan de gegevens die ik heb ingetypt in een kolom op zoals het moet, maar dan word er ook nog eens een andere kolom toegevoegd zonder gegevens. Ik wil graag dat er dan maar 1 kolom word toegevoegd. Hoe doe ik dat dan?
Even eerst een controle doen voordat de query word uitgevoerd:
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
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
<table border="1" bordercolor="#666666" cellpadding="0" cellspacing="0" width="75%">
<tr>
<td background="images/bg.bmp"><center><b><a href="?p=beheer">Beheer</a> - Nieuws Toevoegen</b></center></td>
</tr>
<tr>
<td>
<form method="POST" action="
<? echo $PHP_SELF; ?>
">
<table border="0" width="100%">
<tr>
<td width="50%">Titel</td><td width="50%"><input type="text" name="naam" size="36"></td>
</tr>
<tr>
<td width="50%">Nieuws</td><td width="50%"><textarea rows="5" name="nieuws" cols="20"></textarea></td>
</tr>
<tr>
<td width="50%">Datum</td><td width="50%"><input type="datum" name="datum" size="36"></td>
</tr>
<tr>
<td width="50%"></td><td width="50%"><input type="submit" value="Verzenden" name="verzenden"><input type="reset" value="Opnieuw" name="reset"></td>
</tr>
</table>
</form>
<?php
if (!empty ($_POST['naam']) AND !empty ($_POST['nieuws']) AND !empty ($_POST['datum'])) {
$query="INSERT INTO nieuws (naam, nieuws, datum) VALUES ('".$_POST['naam']."', '".$_POST['nieuws']."', '".$_POST['datum']."')";
mysql_query($query) or die (mysql_error());
}
?>
</td>
</tr>
</table>
<tr>
<td background="images/bg.bmp"><center><b><a href="?p=beheer">Beheer</a> - Nieuws Toevoegen</b></center></td>
</tr>
<tr>
<td>
<form method="POST" action="
<? echo $PHP_SELF; ?>
">
<table border="0" width="100%">
<tr>
<td width="50%">Titel</td><td width="50%"><input type="text" name="naam" size="36"></td>
</tr>
<tr>
<td width="50%">Nieuws</td><td width="50%"><textarea rows="5" name="nieuws" cols="20"></textarea></td>
</tr>
<tr>
<td width="50%">Datum</td><td width="50%"><input type="datum" name="datum" size="36"></td>
</tr>
<tr>
<td width="50%"></td><td width="50%"><input type="submit" value="Verzenden" name="verzenden"><input type="reset" value="Opnieuw" name="reset"></td>
</tr>
</table>
</form>
<?php
if (!empty ($_POST['naam']) AND !empty ($_POST['nieuws']) AND !empty ($_POST['datum'])) {
$query="INSERT INTO nieuws (naam, nieuws, datum) VALUES ('".$_POST['naam']."', '".$_POST['nieuws']."', '".$_POST['datum']."')";
mysql_query($query) or die (mysql_error());
}
?>
</td>
</tr>
</table>
Gewijzigd op 01/01/1970 01:00:00 door ik ben weg
Zet nooit rechtstreeks POST variabelen in een INSERT query. Lees even iets over MySQL injection.
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
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
<?php
ini_set ('display_errors', 1);
error_reporting (E_ALL);
$msg = '';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// hier controleren of je waarden geldig zijn, dus niet empty
// bij datums hier controleren of het een geldige datum is, dus niet 31 feb 2008
$sql = "
INSERT INTO nieuws
(
naam,
post,
datum
)
VALUES
(
" . mysql_real_escape_string ($_POST['naam']) . ",
" . mysql_real_escape_string ($_POST['post']) . ",
" . mysql_real_escape_string ($_POST['datum']) . "
)
";
if (!mysql_query ($sql)) {
$msg = mysql_error ();
}
else {
if (mysql_affected_rows () == 1) {
$msg = 'Record is toegevoegd';
}
else {
$msg = 'De query is gelukt, maar er is niets toegevoegd';
}
}
}
?>
ini_set ('display_errors', 1);
error_reporting (E_ALL);
$msg = '';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// hier controleren of je waarden geldig zijn, dus niet empty
// bij datums hier controleren of het een geldige datum is, dus niet 31 feb 2008
$sql = "
INSERT INTO nieuws
(
naam,
post,
datum
)
VALUES
(
" . mysql_real_escape_string ($_POST['naam']) . ",
" . mysql_real_escape_string ($_POST['post']) . ",
" . mysql_real_escape_string ($_POST['datum']) . "
)
";
if (!mysql_query ($sql)) {
$msg = mysql_error ();
}
else {
if (mysql_affected_rows () == 1) {
$msg = 'Record is toegevoegd';
}
else {
$msg = 'De query is gelukt, maar er is niets toegevoegd';
}
}
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn