fout in blog
hij laat de berichten van het blog wel zien maar hij voegt ze niet toe
iemand suggesties hoe ik dit kan oplossen
////blog.php
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
108
109
110
111
112
113
114
115
116
117
118
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
108
109
110
111
112
113
114
115
116
117
118
<?php
include "bestanden/config.php"; //database connectie
class blog
{
function schrijven()
{
$datum = date('d-m-y');
echo "
<table align='center'>
<form action='blog.php?functie=toevoegen' method='post'>
<tr>
<td><label>Titel:</label></td>
<td><input type='text' size='30' name='titel' /></td>
</tr>
<input type='hidden' value='$datum' name='datum' />
<tr>
<td><label>text</label></td>
<td><textarea name='text'></textarea></td>
</tr>
<tr><td></td>
<td><input type='submit' value='toevoegen' /></td>
</tr>
</form>
</table>
";
}
function toevoegen($titel,$datum,$text)
{
$qwery = "INSERT INTO blog ('titel','datum','text') VALUES ($title,$datum,$text)";
mysql_query($qwery) or die('kan het niet toevoegen');
echo "<script type='text/javascript'>alert('bericht succesvol toegevoegd');</script>";
}
function bekijken()
{
echo "<table align='center' border='0'>";
$qwery = "SELECT * FROM blog";
$reslut = mysql_query($qwery);
while($row = mysql_fetch_array($reslut))
{
echo "
<tr>
<td>".$row['titel']."</td>
<td>".$row['datum']."</td>
<td><a href='?functie=verwijderen&verwijderen=".$row['titel']."'>verwijderen</a></td>
</tr>
<tr>
<td colspan='5'>".$row['text']."</td>
</tr>
";
}
echo"</table>";
}
function instalatie()
{
$qwery = "CREATE TABLE blog (titel varchar(255),datum varchar(255),text text)";
mysql_query($qwery) or die('kan de database niet instaleren');
echo "<script type='text/javascript'>alert('database succesvol geinstaleerd \nu kunt nu beginnen');</script>";
}
function verwijderen($titel)
{
$qwery = "DELETE FROM blog WHERE titel=$titel";
mysql_query($qwery) or die('kan het bericht niet verwijderen');
echo "<script type='text/javascript'>alert('Bericht succesvol verijderd');</script>";
}
}
$blog = new blog;
$functie = $_GET['functie'];
echo"<h1 align='center'>blog</h1>";
echo"<p align='center'><a href='?functie=instalatie'> instaleren </a> | <a href='?functie=schrijven'> schrijf </a></p><br/>";
echo"<div align='center'>";
switch($functie)
{
case schrijven:
$blog->schrijven();
break;
case toevoegen:
$titel = $_POST['titel'];
$datum = $_POST['datum'];
$text = $_POST['text'];
$blog->toevoegen($titel,$datum,$text);
break;
case bekijken:
$blog->bekijken();
break;
case instalatie:
$blog->instalatie();
break;
case verijderen:
$verwijderen = $_GET['verwijderen'];
$blog->verwijderen($verwijderen);
break;
default:
$blog->bekijken();
break;
}
echo "</div>";
?>
include "bestanden/config.php"; //database connectie
class blog
{
function schrijven()
{
$datum = date('d-m-y');
echo "
<table align='center'>
<form action='blog.php?functie=toevoegen' method='post'>
<tr>
<td><label>Titel:</label></td>
<td><input type='text' size='30' name='titel' /></td>
</tr>
<input type='hidden' value='$datum' name='datum' />
<tr>
<td><label>text</label></td>
<td><textarea name='text'></textarea></td>
</tr>
<tr><td></td>
<td><input type='submit' value='toevoegen' /></td>
</tr>
</form>
</table>
";
}
function toevoegen($titel,$datum,$text)
{
$qwery = "INSERT INTO blog ('titel','datum','text') VALUES ($title,$datum,$text)";
mysql_query($qwery) or die('kan het niet toevoegen');
echo "<script type='text/javascript'>alert('bericht succesvol toegevoegd');</script>";
}
function bekijken()
{
echo "<table align='center' border='0'>";
$qwery = "SELECT * FROM blog";
$reslut = mysql_query($qwery);
while($row = mysql_fetch_array($reslut))
{
echo "
<tr>
<td>".$row['titel']."</td>
<td>".$row['datum']."</td>
<td><a href='?functie=verwijderen&verwijderen=".$row['titel']."'>verwijderen</a></td>
</tr>
<tr>
<td colspan='5'>".$row['text']."</td>
</tr>
";
}
echo"</table>";
}
function instalatie()
{
$qwery = "CREATE TABLE blog (titel varchar(255),datum varchar(255),text text)";
mysql_query($qwery) or die('kan de database niet instaleren');
echo "<script type='text/javascript'>alert('database succesvol geinstaleerd \nu kunt nu beginnen');</script>";
}
function verwijderen($titel)
{
$qwery = "DELETE FROM blog WHERE titel=$titel";
mysql_query($qwery) or die('kan het bericht niet verwijderen');
echo "<script type='text/javascript'>alert('Bericht succesvol verijderd');</script>";
}
}
$blog = new blog;
$functie = $_GET['functie'];
echo"<h1 align='center'>blog</h1>";
echo"<p align='center'><a href='?functie=instalatie'> instaleren </a> | <a href='?functie=schrijven'> schrijf </a></p><br/>";
echo"<div align='center'>";
switch($functie)
{
case schrijven:
$blog->schrijven();
break;
case toevoegen:
$titel = $_POST['titel'];
$datum = $_POST['datum'];
$text = $_POST['text'];
$blog->toevoegen($titel,$datum,$text);
break;
case bekijken:
$blog->bekijken();
break;
case instalatie:
$blog->instalatie();
break;
case verijderen:
$verwijderen = $_GET['verwijderen'];
$blog->verwijderen($verwijderen);
break;
default:
$blog->bekijken();
break;
}
echo "</div>";
?>
ltrz
Gewijzigd op 01/01/1970 01:00:00 door Ruben php
Geen idee, beetje rare manier van werken vind ik persoonlijk..
Verder ontbreekt elke vorm van foutafhandeling.
En het is ook nog eens sql-injection gevoelig oftewel lek.
SanThe schreef op 18.03.2009 19:03:
Alle quotes in de query's staan verkeerd of ontbreken.
je bedoelt hierin :
welke precies?
alvast bedankt
PS wat betreft de veiligheid daar maak ik me later wel druk om
hij moet voor mezelf eerst werken, want ik maak t ook voor mezelf voor de fun, om te oefenen
Gewijzigd op 01/01/1970 01:00:00 door ruben php
En bij $title horen juist weer wel quotes want dit is tekst. En hou $vars buiten de dubbele quotes.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$query = "INSERT INTO blog (
titel,
datum,
text
)
VALUES
(
'" . mysql_real_escape_string($title) . "',
NOW(),
'" . mysql_real_escape_string($text) . "'
)";
?>
$query = "INSERT INTO blog (
titel,
datum,
text
)
VALUES
(
'" . mysql_real_escape_string($title) . "',
NOW(),
'" . mysql_real_escape_string($text) . "'
)";
?>
En je switch werkt op deze manier gewoon niet. Zal altijd naar default terugvallen. Tenzij ik heb gemist waar jij de constanten definieert die je daar gebruikt.
super bedankt allemaal ik ben er achter:D