Onlangs heeft mijn hosting bedrijf een wijziging doorgevoerd, namelijk; dat SMTP-authenticatie verplicht is in formulieren.
Probleem is dat ik er niet uit kom, heb internet afgeseurd van dingen geprobeerd, maar ik heb te weinig kennis van php.
Hieronder de 2 code stukken voor mijn 2 formulieren waar de smtp in moet worden verwerkt (nu dus zonder smtp)
Hoe moet de code zijn?

Code voor de contractformulier;


<?php
if(isset($_POST['submit']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$query = $_POST['message'];
$email_from = $name.'<'.$email.'>';

$to="[email protected]";
$subject="Bericht contactformulier SVN";
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= "From: ".$email_from."\r\n";
$message="

Naam:
$name
<br>
Email:
$email
<br>
Bericht:
$query

";
if(mail($to,$subject,$message,$headers))
header("Location:../contact.php?msg=Bedankt voor uw bericht.");
else
header("Location:../contact.php?msg=Error Email niet verzonden!");
//contact:[email protected]
}
?>




-------------------------------------------------------------------------------------------------------
En hieronder de code voor het lidmaatschap formulier;
-------------------------------------------------------------------------------------------------------


<?php
/*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Actions.php
* bestelling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/

$mode = $_GET["mode"];

if($mode == "Bestelling"){

echo"<html>
<head>
<title>Lidmaatschap aanmelding</title>
</head>
<body>
Uw bericht wordt verzonden...
</body>
</html>";
$naam = $_POST["naam"];
$adres = $_POST["adres"];
$postcode1 = $_POST["postcode1"];
$woonplaats = $_POST["woonplaats"];
$land = $_POST["land"];
$telefoonnummer = $_POST["telefoonnummer"];
$email = $_POST["email"];
$bank = $_POST["bank"];
$hond = $_POST["hond"];
$geslacht = $_POST["geslacht"];
$stamboom = $_POST["stamboom"];
$type = $_POST["type"];
$datum = $_POST["datum"];
$vader = $_POST["vader"];
$moeder = $_POST["moeder"];
$fokker = $_POST["fokker"];
$opmerkingen = nl2br($_POST["opmerkingen"]);


$afzender = "$naam <$email>";
$aan = "<[email protected]>";
$onderwerp = "Lidmaatschap aanmelding van $naam";

$msg = "Lidmaatschap aanmelding op ikke: $naam

<br/><strong style='width: 160px;'>naam:</strong> $naam
<br/><strong style='width: 160px;'>adres:</strong> $adres
<br/><strong style='width: 160px;'>postcode:</strong> $postcode1
<br/><strong style='width: 160px;'>woonplaats:</strong> $woonplaats
<br/><strong style='width: 160px;'>land:</strong> $land
<br/><strong style='width: 160px;'>telefoonnr:</strong> $telefoonnummer
<br/><strong style='width: 160px;'>email:</strong> $email
<br/><strong style='width: 160px;'>bank:</strong> $bank
<br/><strong style='width: 160px;'>naam van hond:</strong> $hond
<br/><strong style='width: 160px;'>geslacht:</strong> $geslacht
<br/><strong style='width: 160px;'>stamboomnummer:</strong> $stamboom
<br/><strong style='width: 160px;'>stamboom type:</strong> $type
<br/><strong style='width: 160px;'>geboortedatum:</strong> $datum
<br/><strong style='width: 160px;'>vader van de hond:</strong> $vader
<br/><strong style='width: 160px;'>moeder van de hond:</strong> $moeder
<br/><strong style='width: 160px;'>fokker:</strong> $fokker
<br/><strong style='width: 160px;'>extra opmerkingen:</strong> $opmerkingen";



$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: $afzender\r\n";

$mail = mail($aan, $onderwerp, $msg, $headers);

if($mail){
echo "<script type='text/javascript'>location.href='mailing.html';</script>";
}else{
echo "<script type='text/javascript'>location.href='error.html';</script>";
}
}
?>
<head><title></title></head>
Standaard heeft iedere klant de mogelijkheid om Gratis gebruik te maken van onze FormMail
3 php bestanden gekregen waar ik wachtwoord enzo in moest vullen, een script voor op de html pagina en klaar is kees
Dan ben ik zelf heel benieuwd waarom PHPmailer niet werkt. Ik gok dat het echt ergens in de instellingen zelf zit, gezien het heel veel gebruikt wordt en enorm verfijnd te configureren is.

Je zou maar Wordpress draaien of een ander CMS die PHPmailer gebruikt... :X :X


Of heb je een oplossing gekregen om een formulier-script van hun in je formulier bij de action te zetten?
klopt, het is hun eigen script, heeft neits met phpmailer te maken
Maar dat is niet waar ik op doel..... ;-)

Ik ben benieuwd waarom het in phpMailer niet werkt. Ik kan me indenken dat ze hun eigen brouwsels graag promoten, maar dan alsnog....
zucht, nou dat werkt dus ook niet, ik ben er helemaal klaar mee.
ik heb ook 0,0 nieuwe offertes binnen gekregen en dat van het php monsterbord hier wil mijn vacature niet plaatsen ofzo.
Ik denk dat ik maar tegen de forum regels iets moet plaatsen hier ergens, anders word het nooit wat en kan ik de website opdoeken
Er is gewoon een vacature-forum hier. Dat er een samenwerking hier met Monsterboard is, wil niet zeggen dat je geen vacature in het forum hier mag plaatsen.

En wat werkt er nou precies niet aan. En wat heb je geprobeerd?
Of heb je meer behoefte aan een vacature in het vacature-forum (i.p.v. het externe Monsterboard, die meer commerciële vacatures ziet).
Laat de hele code nu eens zien wat je hebt (dat met PHPMailer).

Wat je eventueel zou kunnen doen is een tijdelijk e-mailadres aanmaken en hier de inlog gegevens plaatsen zodat wij zelf even kunnen testen, als het ons vervolgens ook niet lukt weet je dat het aan de SMTP server ligt.

Welke host heb je?
@ arien
Dank, ik heb dat over het hoofd gezien denk ik, ik heb zojuist een bericht geplaatst

@ joakim
Ik was er mee bezig voor je, maar nu blijkt dat ik een firewall probleem heb (aan mijn kant) met het control panel, bij alles wat ik daarin wil doen, knalt hij mij eruit.
Ik doe het wel met de vacature.....
Prima, ik zie hem al staan. Hopelijk krijg je goede offertes erop.
Om jullie even een update te geven, de reden waarom er geen connectie gemaakt kon worden met de SMTP server was een verkeerde instelling. PHPMailer heeft een instelling waardoor SMTP authenticatie automatisch via TLS gaat, wat voor de meeste SMTP servers niet werkt. Door de instelling SMTPAutoTLS op false te zetten werkte het ;-)


$mail->SMTPAutoTLS = false

Reageren