login  Naam:   Wachtwoord: 
Registreer je!
Scripts > PHP > Gastenboeken > Gastenboek 2.1


Reacties op het script Gastenboek 2.1

Offline  webstab
Gepost op: 01 september 2004 - 14:14
PHP ver gevorderde



de emailcheck werkt bij mij niet.
als ik het emailadres bla12346qsdf@hotmail.com invul dan zegt hij dat dit correct is, maar dat is helemaal niet zo

Offline  cur
Gepost op: 03 september 2004 - 20:53
Nieuw lid



toppertje

Joël kan je de smileys weer uploaden ?!? ty (de oude die bij het gastenboek horen, 20x20)

Offline  Joel
Gepost op: 03 september 2004 - 22:04
Eigenaar



Citaat:
[I][B]webstab[/B] schreef op 01 September 2004 - 14:14[/I]

de emailcheck werkt bij mij niet.
als ik het emailadres bla12346qsdf@hotmail.com invul dan zegt hij dat dit correct is, maar dat is helemaal niet zo
Het checkt enkel of het e-mailadres juist is ingevuld, niet of dat bestaat, dat kan je jammer genoeg niet 

Offline  Jeroen
Gepost op: 04 september 2004 - 13:19
Onbekend



Dan weet ik meer dan jou Joël . Met de volgende code kan je perfect je email checken of hij bestaat ofniet!

  1. <?php
  2. class mail_check_global
  3. {
  4. var $system_OS = "win"; // required for MX digging (win / linux)
  5. var $debug = 0; // self-explaining (0 - OFF, 1 - ON)
  6. var $recType = "MX"; // limitting dns query to Mail eXchange only
  7. var $email; // the goal! ;)
  8. var $hostName; // parent domain for address
  9. var $userName; // actually NOT used :)
  10. var $check_DNS_result; // debuging DNS check
  11. var $check_MAIL_result; // debuging SYNTAX check
  12.  
  13. // check if MX records in DNS server response (WINDOWS !!!):
  14. function checkDNS()
  15. {
  16. if ($this -> system_OS == "linux") // linuz
  17. {
  18. if (getmxrr($this -> hostName)) return TRUE;
  19. else return FALSE;
  20. } else { // windoz
  21. if(!empty($this -> hostName))
  22. {
  23. exec("nslookup -type=".$this->recType." ".$this -> hostName, $result);
  24. // check each line to find the one that starts with the host
  25. // name. If it exists then the function succeeded.
  26. foreach ($result as $line)
  27. {
  28. if(eregi("^".$this -> hostName,$line)) return true;
  29. }
  30. // otherwise there was no mail handler for the domain
  31. return false;
  32. }
  33. return false;
  34. }
  35. }
  36.  
  37. // brake address --> username & parent domain
  38. function check_email_dns()
  39. {
  40. list($this -> userName, $this -> hostName) = split("@", $this -> email);
  41. if (!$this -> checkDNS ($this -> hostName))
  42. {
  43. $this -> check_DNS_result = "Address domain MX DNS record could NOT be found";
  44. return FALSE;
  45. } else {
  46. $this -> check_DNS_result = "Address DNS MX is OK";
  47. return TRUE;
  48. }
  49. }
  50.  
  51. // check addresse's SYNTAX
  52. function check_email()
  53. {
  54. $this -> email = strtolower($this -> email);
  55. if (preg_match('/^[-!#$%&'*+./0-9=?A-Z^_`{|}~]+@([-0-9A-Z]+.)+([0-9A-Z]){2,4}$/i', $this -> email))
  56. {
  57. $this -> check_MAIL_result = "Address syntax is OK";
  58. return TRUE;
  59. } else {
  60. $this -> check_MAIL_result = "Address syntax is WRONG";
  61. return FALSE;
  62. }
  63. }
  64.  
  65. // global check
  66. function final_mail_check()
  67. {
  68. if (!$this -> check_email_dns() OR !$this -> check_email()) return FALSE;
  69. else return TRUE;
  70. }
  71.  
  72. // debuging ONLY
  73. function debug_address()
  74. {
  75. if ($this -> debug == 1)
  76. {
  77. echo "<br>";
  78. echo "<b>DEBUG</b>:";
  79. echo "<br>";
  80. echo "<u>eMail</u>: ".$this -> email;
  81. echo "<br>";
  82. echo "<u>DNS</u>: ".$this -> check_DNS_result;
  83. echo "<br>";
  84. echo "<u>Syntax</u>: ".$this -> check_MAIL_result ;
  85. echo "<br>";
  86. }
  87. }
  88. } ?>


  1. <?php $check = new mail_check_global; // initiate class
  2. $check -> email = "root@yahoo.com"; // REQUIRED --> address to check
  3. $check -> debug = 1; // OPTIONAL --> default is 0; values: 0 / 1
  4. $check -> system_OS = "win"; // OPTIONAL --> default is WINDOWS; values: win / linux
  5.  
  6. // USE: if($check -> final_mail_check()) ------------------ your action here --------;
  7.  
  8. // USE example:
  9. if ($check -> final_mail_check()) echo "<font style=\"color:green; font-weight:bold\">Email address IS VALID!</font>";
  10. else echo "<font style=\"color:red; font-weight:bold\">The address is NOT VALID!</font>";
  11.  
  12. $check -> debug_address(); // debuging purposes
  13. ?>

Offline  Maiky
Gepost op: 05 september 2004 - 22:49
Nieuw lid



hmm ik wil hem include zodra hij bij de volgende pagina beland laat hij het weergeven zonder layout kan iemand mij helpen ?

Offline  Joel
Gepost op: 05 september 2004 - 23:56
Eigenaar



Start maar een forumbericht wat het probleem is, met wat uitleg a.u.b.

Offline  S_A_H
Gepost op: 26 september 2004 - 20:22
Nieuw lid



heej
als ik een bericht heb getypt in schrijven en dan op verzenden druk hoort die normaal automatisch naar lezen te gaan maar hij blijft bij mij met een leeg beeld hangen in schrijven, als ik dan net zovaak op vorige druk tot ik weer bij home ben en dan weer naar lezen ga dan staat hij er wel in, wat kan het probleem zijn.

ps: verder ist een cool script ;)

Offline  Joel
Gepost op: 26 september 2004 - 21:57
Eigenaar



header ("location: lezen.php");

Deze code leest hij normaal als je een bericht verstuurt. Ik weet niet direct wat het probleem kan zijn.

Offline  S_A_H
Gepost op: 28 september 2004 - 20:09
Nieuw lid



tis al gelukt hij doet het  bedankt he jojo

Offline  webstab
Gepost op: 08 oktober 2004 - 22:48
PHP ver gevorderde



ik heb uit dit gastenboek de emailcheck gehaald:
  1. function check_email($address) {
  2. list($local, $host) = explode("@", $address);
  3. $pattern_local = "^([0-9a-z]*([-|_]?[0-9a-z]+)*)(([-|_]?)\.([-|_]?)[0-9a-z]*([-|_]?[0-9a-z]+)+)*([-|_]?)$";
  4. $pattern_host = "^([0-9a-z]+([-]?[0-9a-z]+)*)(([-]?)\.([-]?)[0-9a-z]*([-]?[0-9a-z]+)+)*\.[a-z]{2,4}$";
  5. $match_local = eregi($pattern_local, $local);
  6. $match_host = eregi($pattern_host, $host);
  7.  
  8. if($match_local && $match_host) {
  9. return 1;
  10. } else {
  11. return 0;
  12. }
  13. }

wnr het een goed emailadres is dan doet hij het goed,wnt het een fout is dan zeg hij dat het fout is(wat ook goed is) maar er komt dan ook onder: undefined offset : 1

Offline  phpfreak
Gepost op: 20 oktober 2004 - 21:30
PHP beginner



bij mij werkt de pagina lezen niet, ik heb een bericht gepost, en dat staat in de db, maar hij geeft het bericht niet weer op de lezen pagina: http://members....e=gb/lezen (moet normaal een bericht staan)

Offline  xSc
Gepost op: 20 december 2004 - 10:04
Onbekend



Joël, html kun je beter tussen ' echoën. Dit voorkomt onnodig escapen.

Offline  rredspike
Gepost op: 27 april 2005 - 00:56
Nieuw lid



Citaat:
[I][B]phpfreak[/B] schreef op 20 Oktober 2004 - 21:30[/I]

bij mij werkt de pagina lezen niet, ik heb een bericht gepost, en dat staat in de db, maar hij geeft het bericht niet weer op de lezen pagina: http://members....e=gb/lezen (moet normaal een bericht staan)


verkeerd password?

Offline  PDX
Gepost op: 05 mei 2005 - 19:02
Lid



bij:
//Na het verzenden sturen we de gebruiker terug naar het gastenboek

header ("location: lezen.php");

}

krijg ik een foutmelding... op de regel waar zich die header bevind! wat is er fout aan? alvast bedankt

Offline  vobizzz
Gepost op: 01 juni 2005 - 18:34
Lid



Hey,
ik kan op mijn site (van funpic.org) kan ik geen anderen database meer maken want dan heb je 1 standaard dus daarom kan ik het niet bekijken want hij gefft aan "Table 'davey.gastenboek' doesn't exist" dus ik weet niet waar het aan ligt ligt het dan aan de database?? of aan mij?? ik hoop dat jullie het weten

Greetzz davey

Offline  vobizzz
Gepost op: 04 juni 2005 - 13:50
Lid



laat maar ik heb wat over het hoofd gezien :$ sorry :$

Offline  bmb
Gepost op: 06 juli 2005 - 22:30
Nieuw lid



  1. Notice: Undefined index: nav in C:\Program Files\Apache Group\Apache2\htdocs\gastenboek\lezen.php on line 20


  1. Notice: Undefined index: Submit in C:\Program Files\Apache Group\Apache2\htdocs\gastenboek\schrijven.php on line 23


Ben ik de enige met deze foutmeldingen?  hij werkt verder wel perfect maar ik heb alleen die meldingen 

Offline  Joel
Gepost op: 06 juli 2005 - 22:31
Eigenaar



Verander:

  1. <?php
  2. if ($_POST['Submit']) {
  3. ?>


eens door:

  1. <?php
  2. if (isset($_POST['Submit'])) {
  3. ?>

Offline  bmb
Gepost op: 06 juli 2005 - 22:37
Nieuw lid



Citaat:
[I][B]Joël[/B] schreef op 06 Juli 2005 - 22:31[/I]

Verander:

[..code..]

eens door:

[..code..]


Dat werkt  dank u

nu blijft er nog maar 1 melding over 

Offline  Joel
Gepost op: 06 juli 2005 - 23:02
Eigenaar



Gastenboek 2.1 is gepost..

Offline  Pignugget
Gepost op: 18 augustus 2005 - 10:56
Nieuw lid



Een erg mooi gastenboek Joël!
Ik heb hem in mijn eigen layout geintegreerd en het werkt perfect!

Behalve.. de navigatie.
Als ik naar bladzijde 2 wil dan krijg ik gewoon bladzijde 1 weer te zien.
(de berichten die voor de 10 recenste zijn gepost krijg ik dus niet meer terug)
Ik zie dat dit in het voorbeeld gastenboek (http://www.sitemasters.be/gastenboek/lezen.php) ook niet werkt.

Heb jij / iemand hier toevallig een oplossing voor? Zou erg fijn zijn!
Ik ben al in het script gedoken maar het is me nog niet gelukt.
Alvast bedankt.

Offline  Joel
Gepost op: 18 augustus 2005 - 15:27
Eigenaar



Op regel 37 van lezen.php ff deze regel aanpassen naar:

  1. if (isset($_GET['pagina'])) $nav = $_GET['pagina'];

En dan werkt hij 

Offline  bertenz
Gepost op: 28 augustus 2005 - 15:03
HTML beginner



Het gastenboek werkt goed. Ik heb er zelf wat aanpassingen aan moeten doen, maar dat komt door de structuur van mijn website. De meeste problemen heb ik zelf kunnen verhelpen, maar het volgende probleem krijg ik maar niet opgelost. Ik krijg namelijk telkens als er een bericht gepost wordt de volgende foutmelding:

Citaat:
Notice: Undefined variable: error in /home/bertens/public_html/test/svsssa1/paginas/gastenboek/schrijven.php on line 47


De code die daar staat is dan:

  1. /*45*///Als er een veld niet is ingevuld of wanneer het e-mailadres niet bestaat komt er een error
  2. /*46*/
  3. /*47*/ if ($error != "") {
  4. /*48*/ ?>


Ik heb daar niks veranderd aan de code(ik heb wel het neerzetten van een cookie en dus ook het controleren op een cookie verwijderd, want ik heb geen anti-spam systeem nodig denk ik).
Weet iemand misschien hoe ik dit probleem kan oplossen? Alvast bedankt.

Bertenz

p.s. Verder werkt het overigens helemaal perfect Joël!

EDIT: het bericht wordt overigens wel gewoon verstuurd dus daar heb ik geen probleem mee.

Offline  Joel
Gepost op: 30 augustus 2005 - 16:33
Eigenaar



Zet eens op die pagina helemaal bovenaan:

$error == "";

Die error geeft hij omdat de variabele $error niet bestaat ofzo.

Offline  bertenz
Gepost op: 30 augustus 2005 - 22:40
HTML beginner



Het is niet gelukt om op die manier het probleem op te lossen. Ik heb nu het gedeelte
  1. if ($error != "") {
weggelaten. Hierdoor heb ik nu echter wel een hele lange code doordat ik er iets anders tussen moest zetten, maar beter even een lange code dan telkens een foutmelding. Ik ga later (als ik het iets minder druk heb) het verbeteren.
Ik heb alleen nog wel één vraagje. Mijn server staat voorlopig nog in de VS en daardoor klopt de tijd niet met de tijd van hier. Weet iemand dan hoe ik ervoor kan zorgen dat de datum die in de database wordt gezet de GMT +1 tijd is? Alvast bedankt.

Bertenz

Offline  Joel
Gepost op: 31 augustus 2005 - 01:13
Eigenaar



Vraag dat anders eens op het forum aub.

Offline  Euroinfo
Gepost op: 02 november 2005 - 16:38
Nieuw lid



Kan iemand vertellen hoe ik hier een functie in kan bouwen zodat het IP adres ook wordt opgenomen?

Offline  Joel
Gepost op: 03 november 2005 - 00:22
Eigenaar



  1. <?php
  2. $ipadres = $_SERVER['REMOTE_ADDR'];
  3. ?>


Deze variabele meesturen via de mysql query 'INSERT' en een nieuwe kolom aanmaken in de tabel -> ipadres varchar 15

Succes

Offline  Euroinfo
Gepost op: 03 november 2005 - 10:09
Nieuw lid



Ik snap het niet helemaal wat je zegt.
Ik heb nu een rij toegevoegd met ip en varchar 20 en NULL

Wat moet ik dan nog meer toevoegen aan pagina's?
Moet ik bij schrijven.php bij INSERT INTO gastenboek zoiets zetten:
  1. '".$_POST['bericht']."', '".$ip."', NOW())")

Aan functies.php heb ik toegevoegd:
  1. function ip($ip)
  2. {
  3.  
  4. if(getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))
  5. {
  6.  
  7. $ip = getenv("HTTP_CLIENT_IP");
  8.  
  9. }
  10.  
  11. elseif(getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))
  12. {
  13.  
  14. $ip = getenv("HTTP_X_FORWARDED_FOR");
  15.  
  16. }
  17.  
  18. elseif(getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
  19. {
  20.  
  21. $ip = getenv("REMOTE_ADDR");
  22.  
  23. }
  24.  
  25. elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
  26. {
  27.  
  28. $ip = $_SERVER['REMOTE_ADDR'];
  29.  
  30. }
  31.  
  32. else
  33. {
  34.  
  35. $ip = "onbekend";
  36.  
  37. }
  38.  
  39. return $ip;
  40.  
  41. }

Offline  Joel
Gepost op: 03 november 2005 - 11:50
Eigenaar



als je nu '".$ip."' veranderd door '".ip()."' zou het moeten werken 

Offline  Ph070n
Gepost op: 14 januari 2006 - 21:30
Nieuw lid



http://www.kabokey.nl/write.php

daar is een draaiende, licht aangepaste versie.. werkt erg relax!

Offline  baszer
Gepost op: 27 maart 2006 - 18:51
Nieuw lid



Citaat:
[I][B]Joël[/B] schreef op 18 Augustus 2005 - 15:27[/I]

Op regel 37 van lezen.php ff deze regel aanpassen naar:

[..code..]
En dan werkt hijĀ 


nou niet bij mij?
aangzien dit de regel is die er al staat bij je ghele code...:(

Offline  devilman
Gepost op: 14 april 2006 - 18:13
HTML interesse



Notice: Undefined offset: 1 in /home/joel/domains/sitemasters.be/public_html/gastenboek/functies.php on line 36

zit een foutje in voorbeeld

Offline  mister_tom
Gepost op: 18 juni 2006 - 20:40
Nieuw lid



Notice: Undefined variable: van in /home2/xplosive/public_html/lezen.php on line 85
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '10' at line 1

Ik zou niet weten wat er fout is aan regel 85:

  1. //berichten selecteren
  2. $data = mysql_query("SELECT * FROM gastenboek ORDER BY id DESC LIMIT ".$van.",".$max) or die (mysql_error());


Zou iemand mij kunnen helpen? alvast bedankt!

Offline  dennus2006
Gepost op: 10 oktober 2006 - 20:06
Nieuw lid



U kunt dit script bekijken en testen op:
http://scripttester.awardspace.com/48/

Offline  nicodebruin
Gepost op: 13 november 2006 - 23:54
Lid



Ten eerste een leuk script, omdat ik zelf weinig php kennis heb en graag een gastenboek wilde zonder reclame..

Het gastenboek werkt goed ik zit alleen met hetzelfde foutje als webstab al heeft gemeld als ik een niet bestaand email adres invul krijg ik de volgende melding

Notice: Undefined offset: 1 in .../.../.../.../functies.php on line 36
(ik heb even mijn site eruit gehaald bij de puntjes )
Weet iemand hoe je dit kunt oplossen 

Offline  Joel
Gepost op: 14 november 2006 - 01:10
Eigenaar



Hoi

Ik heb de functie aangepast:

  1. function check_email($in) {
  2. $patroon = "/^([a-z0-9_-]+\.)*[a-z0-9_-]+@([a-z0-9_-]{2,}\.)+([a-z0-9_-]{2,})$/i";
  3. return preg_match($patroon, $in);
  4. }

Als je deze aanpast, werkt het dan?

Offline  nicodebruin
Gepost op: 14 november 2006 - 11:37
Lid



Ja super het werkt nu! bedankt voor je snelle reactie..  
Ik ga weer verder met het aanpassen als ik nog vragen heb laat ik het weten

Offline  JeroenS
Gepost op: 30 november 2006 - 18:24
Nieuw lid



Hallo,

Het gastenboek werkt perfect.
Ik heb alleen een vraag, kan de functie er ook uit dat bezoekers een dag lang niet kunnen posten na dat ze een bericht hebben geplaatst.

Ik heb al het nodige geprobeert maar het lukt niet echt.

$seconden = 60*60*24; //Na hoeveel seconden men terug een bericht kan plaatsen (standaard 1 dag)
$tijd_cookie = time() + $seconden;

neem aan dat de volgorde seconden-minuten-uren is.

maar als ik hier iets wijzig heeft dit geen efect. 

Offline  barone
Gepost op: 05 januari 2007 - 00:07
Onbekend



dan moet je gewoon bij schrijven.php die beveiliging ervoor weghalen regel begint met COOKIES ofso heb ik oko gedaan

Offline  barone
Gepost op: 05 januari 2007 - 15:39
Onbekend



maarja hij werkt toppie heb zelf nog ff de CSS veranderd etc. hij werkt toppie

je kan hem zien op pascal.lox-host.com 

Offline  piranhaxl
Gepost op: 15 januari 2007 - 11:28
Nieuw lid



Notice: Undefined index: Gastenboek on line 43

Notice: Undefined variable: error in on line 49
No database selected

allebij in schrijven

ben ik de enige? 

Offline  steeb
Gepost op: 10 maart 2007 - 17:24
Nieuw lid



hallo, ik heb dit gastenboek ook geinstalleerd, ik werk hier mee lokaal alleen. Schrijven.php werkt. In mn admin(php) wordt er idd een nieuwe regel aangemaakt, dus dat werkt ook. Maar ik kan de teksten niet lezen, maar in lezen.php staan wel het aantal regels waar alles ingevuld had moeten zijn, dus de records zijn leeg zeg maar. Ik krijg ook allerlei foutmeldingen zoals:

Notice: Undefined index: Gastenboek in C: \wamp\www\kbz\schrijven.php on line 44

Notice: Undefined variable: error in C: \wamp\www\kbz\schrijven.php on line 50

Notice: Use of undefined constant Gastenboek - assumed 'Gastenboek' in C: \wamp\www\kbz\schrijven.php on line 72

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\kbz\schrijven.php:2) in C: \wamp\www\kbz\schrijven.php on line 72

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\kbz\schrijven.php:2) in C: \wamp\www\kbz\schrijven.php on line 75


wie kan me hiermee helpen? Ik heb xtra spaaties bij c: \ gezet, anders wordt het een smilie!! Dus daar ligt het niet aan!

alvast bedankt voor de respons

Richard

Offline  Joel
Gepost op: 11 maart 2007 - 23:10
Eigenaar



Plaats <? ob_start(); ?> helemaal bovenaan op de pagina.

Offline  lutke
Gepost op: 20 maart 2007 - 15:59
Nieuw lid



Ik mis eigenlijk beveiling tegen spam, voor de rest zeer net gastenboek.

Offline  steeb
Gepost op: 20 maart 2007 - 23:33
Nieuw lid



ok dan! een mooi gastenboek, maar........
ik heb hem geintegreerd in een eigen layout, lezen werkt prima, totdat ik meer dan 10 berichten heb geschreven, pagina 2 en verder doen het dan niet meer, in de url mist tussen http://www.--------------.nllezen.php/?pagina=2. Je ziet het al, tussen .nl en lezen.php mist de slash. Hoe kan dat?
Maar.....als ik deze handmatig in de url zet, komt wel de volgende pagina in beeld, + de geposte berichten, maar alle images van de layout missen, help gevraagd dus. alvast hartelijk dank, voor de rest werkt ie prima!!

Richard 

edit: fout gevonden, in config moest er nog een slash achter de url!!!
ik leer het nog wel eens

Offline  steeb
Gepost op: 22 maart 2007 - 02:08
Nieuw lid



toch nog een probleem gevonden!
als ik dertig berichten heb, en dan naar pagina 3 ga, is alles ok, wil ik daarna tewrug naar pagina 1, lees ik wel mn berichten, maar mn complete layout en style sheet werkt ook niet, hoe kan dit?
wie heeft voor mij de oplossing?

alvast bedankt.

Offline  barone
Gepost op: 08 april 2007 - 19:57
Onbekend



check mijn versie is:P best omgevormd denk ik 
www.pscl.nl

Offline  Topdancer
Gepost op: 24 april 2007 - 14:06
Nieuw lid



Ik krijg de volgende error en snap er geen bal van.

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '5' at line 1

Offline  MFdriver
Gepost op: 06 juni 2007 - 22:01
PHP interesse



het wordt tijd om er een spam filter in te bouwen 
ik ben nu bezig aan spam filter te bouwen, maar ik vrees dat het een altijd durende strijd zal blijven 
maar ik weiger op Captcha te gebruiken..

maar met mijn ervaring tot nu toe: als je er <a href=http://
uithaalt, ben je al heet wat spam kwijt 


Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom.
 
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.21s