Gastenboek, met .php includes
Ik heb een tijdje geleden een gastenboek gezien bij een vriend waarbij hij een txt bestand aanmaakt voor elk bericht. Ik wil dat ook maar dan met php. Kan iemand helpen?
Bij mijn vriend kan je txt niet vervangen door de code te veranderen. Je moet blijkbaar een heel nieuwe code aanmaken en op Google is hij ook onbekend...
Alvast bedankt, Josaus
Mocht je met het probleem zitten dat iedereen die .txt kan lezen en ook e.v.t IP-informatie, dan kan je die .txt toch ook buiten je webroot plaatsen?
Maar goed, ik kan aanraden om eens naar MySQL te kijken, dit werkt echt veel handiger, en je kan makkelijk data ophalen en sorteren en dergelijke.
http://php.net/manual/en/function.fopen.php
EDIT
@aar
Ik vatte het op dat die vriend in een andere programmeer taal programmeert..
Gewijzigd op 01/01/1970 01:00:00 door Niels K
Ik wil een speciale opmaak voor de berichten en MySQL is te veel werk gok ik...
Opmaak van berichten kan je regelen met css..
http://www.limoncellosassenheim.nl/pagina6.html. Is geimplementeerd in een iframe.
Ik heb hier op phphulp een voorbeeld php gastenboek gedownload en met wat minimale aanpassingen in gebruik genomen. Super simpel en werkt met slechts 1 tekstbestand en een header en een footer bestand. De entries van gasten worden steeds met een <div> en </div> toegevoegd bovenaan het tekstbestand. Je kan een voorbeeld zien op Link van het script/tutorial is misschien ook handig?
Waar heb je dat script John?
PHP in combinatie met .txt bestanden zou afgeschaft moeten worden.
Gewijzigd op 01/01/1970 01:00:00 door Mr.Ark
Mr.Ark:
PHP in combinatie met .txt bestanden zou afgeschaft moeten worden.
Ik kan niet echt goed MySQL maar ik leer het wel:D Dit heeft veel voordelen vind ik, je kan alles snel bewerken! (uit mijn oogpunt dan:P)
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
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
<?
if ($_POST['submit'] && $_POST['naam'] && $_POST['bericht'] && $_POST['bericht']!="")
{
$post_naam = htmlentities($_POST['naam']);
$bericht = htmlentities($_POST['bericht']);
$bericht = nl2br($bericht);
$gastenboek_tekst = "<b>Geschreven door</b> " . $post_naam . " <b>op</b> " . date('d.m.Y H:i') . "<br>\n<b>Bericht:</b><br>" . $bericht . "<p>\n\n<hr align=\"left\" width=\"200\">\n\n";
$file = fopen("counter.txt", "r");
$num = fgets($file, 4096);
fclose($file);
$ornum = $num + 1;
$num = $num + 1;
if ($num < 10)
$num = "000" . $num;
elseif ($num < 100)
$num = "00" . $num;
elseif ($num < 1000)
$num = "0" . $num;
$filetoopen = $num . "_bericht.php";
$file = fopen($filetoopen, "a");
fwrite($file, $gastenboek_tekst);
fclose($file);
$cfile = fopen("counter.txt", "w");
fwrite($cfile, $ornum);
fclose($cfile);
echo "Bericht toegevoegd.<p>";
}
else
{
echo "<form name=\"frmPost\" method=\"POST\" action=\"" . $_SERVER['PHP_SELF'] . "\">";
echo "Naam:<br><input type=\"text\" name=\"naam\"><br>";
echo "Bericht:<br><textarea name=\"bericht\" rows=\"5\" cols=\"45\"></textarea><br>";
echo "<input type=\"submit\" name=\"submit\" value=\"Bericht toevoegen\">";
echo "</form>";
}
$file = fopen("counter.txt", "r");
$counter = fgets($file, 4096);
fclose($file);
for ($i = $counter; $i > 0; $i--)
{
if ($i < 10)
$i = "000" . $i;
elseif ($i < 100)
$i = "00" . $i;
elseif ($i < 1000)
$i = "0" . $i;
$get_file = $i . "_bericht.php";
if (file_exists($get_file))
{
include($get_file);
echo "<br>";
}
}
?>
if ($_POST['submit'] && $_POST['naam'] && $_POST['bericht'] && $_POST['bericht']!="")
{
$post_naam = htmlentities($_POST['naam']);
$bericht = htmlentities($_POST['bericht']);
$bericht = nl2br($bericht);
$gastenboek_tekst = "<b>Geschreven door</b> " . $post_naam . " <b>op</b> " . date('d.m.Y H:i') . "<br>\n<b>Bericht:</b><br>" . $bericht . "<p>\n\n<hr align=\"left\" width=\"200\">\n\n";
$file = fopen("counter.txt", "r");
$num = fgets($file, 4096);
fclose($file);
$ornum = $num + 1;
$num = $num + 1;
if ($num < 10)
$num = "000" . $num;
elseif ($num < 100)
$num = "00" . $num;
elseif ($num < 1000)
$num = "0" . $num;
$filetoopen = $num . "_bericht.php";
$file = fopen($filetoopen, "a");
fwrite($file, $gastenboek_tekst);
fclose($file);
$cfile = fopen("counter.txt", "w");
fwrite($cfile, $ornum);
fclose($cfile);
echo "Bericht toegevoegd.<p>";
}
else
{
echo "<form name=\"frmPost\" method=\"POST\" action=\"" . $_SERVER['PHP_SELF'] . "\">";
echo "Naam:<br><input type=\"text\" name=\"naam\"><br>";
echo "Bericht:<br><textarea name=\"bericht\" rows=\"5\" cols=\"45\"></textarea><br>";
echo "<input type=\"submit\" name=\"submit\" value=\"Bericht toevoegen\">";
echo "</form>";
}
$file = fopen("counter.txt", "r");
$counter = fgets($file, 4096);
fclose($file);
for ($i = $counter; $i > 0; $i--)
{
if ($i < 10)
$i = "000" . $i;
elseif ($i < 100)
$i = "00" . $i;
elseif ($i < 1000)
$i = "0" . $i;
$get_file = $i . "_bericht.php";
if (file_exists($get_file))
{
include($get_file);
echo "<br>";
}
}
?>
Gewijzigd op 06/06/2010 11:57:13 door jo colling
Noem het xxx_bericht.html en gebruik readfile($get_file).
Je weet het maar nooit...
Ik gebruik hetzelfde script jocolling:D Alleen héél erg aangepast:P