geen bericht aan webmaster bij nieuwe melding in gastenboek

Vragen/antwoorden betreffende het maken van je eigen website.

kris.gua
Lid geworden op: 14 apr 2006, 10:43
Locatie: Brasschaat

11 jun 2013, 11:20

Hallo, ik wilde een gastenboek maken op mijn nieuwe website www.marcel-heyndrikx-svd.be. De meldingen worden wel geplaatst, maar ik krijg geen bericht van plaatsing.

Ik heb mijn script gebaseerd op het script van mijn andere website www.triangulovzw.be. Ook daar krijg ik geen meldingen meer. Het gastenboek wordt niet veel gebruikt, maar ik wil het toch behouden en zeker verwittigd worden als er een nieuwe boodschap is. Een tijdje geleden werd ik nog wel verwittigd (omdat het dikwijls spam was, heb ik dat verwijderd). Voor zover ik me herinner, heb ik het script niet veranderd.
Ik zet het script van gastenboek.php hieronder, maar heb mijn echt emailadres vervangen door mijnmailadres om het niet openbaar wte maken.
Als iemand het nodig heeft om het te bekijken, stuur ik het graag privé in bijlage.

Alvast bedankt!

Kris

<?php session_start();
if (isset($_GET['actie'])){
$actie = $_GET['actie'];
$item = $_GET['item'];
}
else{
$actie = '';
$item = '';
}
$titel = 'Gastenboek';
include('header.php');
$tabel = 'gastenboek';
echo "<div id=\"content\" style=\"padding-left: 50px; height: 750px\">";
echo "<h1>Gastenboek</h1>";
echo "<p>Er wordt weliswaar geen correspondentie gevoerd over de preken, maar u kan hier eventueel een opmerking achterlaten. (klik op de link \"gastenboek invullen\")</p>";
echo"<p> Om spam te vermijden wordt uw boodschap pas weergegeven na controle door de webmaster.</p> ";
if ($actie == ''){
echo "<p><a href=\"$_SERVER[PHP_SELF]?actie=invullen\">Gastenboek invullen</a></p>";
$sql="SELECT * FROM $tabel ORDER BY id DESC";
$resultaat=mysql_query($sql, $db);
while ($regel = mysql_fetch_array($resultaat)){
$id = $regel['id'];
$naam = $regel['naam'];
$email = $regel['email'];
$boodschap = $regel['boodschap'];
$datum = $regel['datum'];
$datum = substr($datum,8,2)."-".substr($datum,5,2)."-".substr($datum,0,4);
$controle = $regel['controle'];
if ($controle == 'ok'){
echo "<div style=\"padding: 10px; margin-bottom: 15px; background: #ccccff\">
<em>$naam - <a href=\"mailto: $email\">$email</a> - $datum</em><br />$boodschap<br />";
if (isset($_SESSION['webmaster'])){
echo "<a href=\"$_SERVER[PHP_SELF]?actie=verbergen&item=$id\">Verbergen</a> ";
echo "<a href=\"$_SERVER[PHP_SELF]?actie=wissen&item=$id\">Wissen</a>";
}
echo "</div>";
}
else {
if (isset($_SESSION['webmaster'])){
echo "<div style=\"padding: 10px; margin-bottom: 15px; background: orange\">
<em>$naam - <a href=\"mailto: $email\">$email</a> - $datum</em><br />$boodschap<br />";
echo "<a href=\"$_SERVER[PHP_SELF]?actie=tonen&item=$id\">Tonen</a> ";
echo "<a href=\"$_SERVER[PHP_SELF]?actie=wissen&item=$id\">Wissen</a></div>";
}
}
}
}
if (($actie != '')AND($actie != 'invullen')){
if ($actie == 'tonen'){
$sql="UPDATE $tabel SET controle = 'ok' WHERE id = '$item'";
}
if ($actie == 'verbergen'){
$sql="UPDATE $tabel SET controle = '' WHERE id = '$item'";
}
if ($actie == 'wissen'){
$sql="DELETE from $tabel WHERE id = '$item'";
}
$resultaat=mysql_query($sql, $db);
echo "<script>window.document.location=\"$_SERVER[PHP_SELF]\"</script>";
}
if ($actie == 'invullen'){
echo "<a href=\"$_SERVER[PHP_SELF]\">Gastenboek lezen</a>";
$datum = date("Y-m-d");
if (isset($_POST['verstuur'])){
$naam = $_POST['naam'];
$email = $_POST['email'];
$boodschap = $_POST['boodschap'];
}
else {
$naam = '';
$email = '';
$boodschap = '';
}
$tekenreeks = '^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$';
$geldigadres =(eregi($tekenreeks,$email));
echo "<script type=\"text/javascript\" src=\"ckeditor/ckeditor/ckeditor.js\"></script>";
if (($naam == "")||($email == "")||($boodschap == "")||($geldigadres == false)){
echo "<form method=\"post\" action=\"$_SERVER[PHP_SELF]?actie=invullen\">";
echo "<p>Naam: ";
if ((isset($_POST['verstuur']))AND($naam == "")){
echo "<span class=\"aandacht\">De naam ontbreekt.</span>";
}
echo "<br /><input type=\"text\" name=\"naam\" value=\"$naam\" size=\"30\" /></p>";
echo "<p>E-mail: ";
if ((isset($_POST['verstuur']))AND($email == "")){
echo "<span class=\"aandacht\">Het e-mailadres ontbreekt.</span>";
}
if (($email != "")&&($geldigadres == false)){
echo "<span class=\"aandacht\">Het e-mailadres is fout.</span>";
}
echo "<br /><input type=\"text\" name=\"email\" value=\"$email\" size=\"30\" /></p>";
if ((isset($_POST['verstuur']))AND($boodschap == "")){
echo "<span class=\"aandacht\">De boodschap ontbreekt.</span>";
}
echo <<<FORMULIER
<textarea name="boodschap">$boodschap</textarea><script type="text/javascript">
CKEDITOR.replace('boodschap',
{
toolbar : 'Basic'
});
</script>
<input type="submit" name="verstuur" value="Boodschap versturen" /></form>
FORMULIER;
}
else {
$sql="INSERT INTO gastenboek (naam, email, boodschap, datum)
VALUES ('$naam', '$email', '$boodschap', '$datum')";
mysql_query($sql, $db);
$bericht = "<html><head><title>Gastenboek</title>";
$bericht.= "<style>body {font: 12px verdana}h1{font: bold 14px verdana}</style></head>";
$bericht.= "<body><h1>Gastenboek van www.marcel-heyndrikx-svd.be</h1>";
$bericht.= "<p>Er is een nieuw bericht in het gastenboek.</p>";
$bericht.= "<p>Naam: $naam</p><p>E-mail: <a href=\"mailto:$email\">$email</a></p>";
$bericht.= "<p>Bericht: <br />$boodschap</p></body></html>";
$headers = "MIME-Version: 1.0\r\n";
$headers.= "Content-Type: text/html; charset=iso-8859-1\r\n";
mail('mijnmailadres@gmail.com', 'Bericht in het gastenboek', $bericht, $headers);
echo "<script>window.document.location=\"$_SERVER[PHP_SELF]\"</script>";
}
}
include('footer.php');
?>
AspireE17-intelcore i3-6100U - Windows 10
HP Pavilion dm3 Notebook PC processor: AMD AThion ™ Neo W2 Dual Core Processor L335 1.60 GHz
Acer Aspire 7551 Processor: AMD Athlon™IIP320dual coreProcessor 2.10 GHzt
Windows 7Home

kris.gua
Lid geworden op: 14 apr 2006, 10:43
Locatie: Brasschaat

13 jun 2013, 20:49

Hallo,

Ik had mijn vraag ook bij one gesteld, maar kwam er eerst niet uit met hun suggesties. (Dat lag eigenlijk aan mezelf, omdat ik niet begreep wat ze bedoelden met FROM-adres. Maar ze zijn daar even geduldig om amateurs te helpen als hier.)
Ik zet hun laatste antwoord hieronder voor het geval er nog iemand gelijkaardige problemen heeft.

In het script gastenboek.php dat u ons heeft gestuurd staat geen FROM adres in de headers ingesteld. Het adres op regel 118 is het adres waar de e-mail naar gestuurd wordt. Het FROM adres kunt in de header doorgeven. Dit adres moet een adres zijn dat eindigt op uw @uwdomein.nl. Meer informatie hierover kunt u vinden op de volgende pagina: http://php.net/manual/en/function.mail.php

Doorsturen lukt nog maar alleen naar een telenetadres, niet naar gmail.
Ik heb de vraag hoe ik dat kan oplossen, ook aan hen gesteld.

Of weet iemand van jullie dat ? (ik gebruik mijn gmailadres meer dan mijn telenetadres)

Dit is ook opgelost:
Antwoord van ONE:
Indien u succesvol mail naar uw telenet adres kunt sturen moet u dit ook kunnen naar gmail. Er zijn hier verder geen aparte uitzonderingen voor. Kunt u misschien eens nakijken of de e-mail in uw ongewenste post is gekomen in uw gmail account?

Het bericht zat inderdaad in spam (andere berichten van ditzelfde adres kwamen niet in spam. Ik heb het mailadres nu toegevoegd aan mijn contacten. Hopelijk is het nu oké.

mailadres toevoegen aan contacten hielp niet: de berichten bleven in spam komen.

Nu filter gemaakt: berichten vaan (mailadres) nooit naar spam sturen. Het bericht van mijn daaropvolgende test is aangekomen! oef.

groetjes,

Kris
AspireE17-intelcore i3-6100U - Windows 10
HP Pavilion dm3 Notebook PC processor: AMD AThion ™ Neo W2 Dual Core Processor L335 1.60 GHz
Acer Aspire 7551 Processor: AMD Athlon™IIP320dual coreProcessor 2.10 GHzt
Windows 7Home