Ik heb begonnen met PHP ik had al een klein beetje voorkennis maar breid dit nu uit via Het Complete Boek van Arjan Burger 1 van mijn formulieren geeft een fout op line 10. Wie kan mij helpen?
<html>
<head>
<title>Mailformulier </title>
</head>
<body>
<?php
ini_set ("SMTP", "mail.live.com");
ini_set ("smtp_poort" , 25);
ini_set ("sendmail_from" , "hier vul ik een hotmail adres in ");
if ($_POST["verzendbutton"] != "verzenden") { // als het formulier leeg is
?>
<form action ="mailform2.php" method="post">
Naam: <input type = "text" name = "naam"><br>
E-mail: <input type = "text" name = "mailadres"><br>
Uw reactie: <textarea cols = "30" rows = "4" name = "reactie"></textarea><br>
<input type = "submit" value = "verzenden" name = "verzendbutton">
</form>
<?php
} else { // in alle andere gevallen (dus formulier verzonden
$boodschap = "Naam: ".$POST["naam"]."\nCommentaar: ".$_POST["reactie"];
mail($POST["mailadres"], "Uw reactie van de website", $boodschap);
echo "Bedankt ".$naam.", fijn dat je mee wilde doen!";
}
?>
</body>
</html>
Er staat in mijn formulier dus ergens een fout wie kan mij helpen? En zijn de SMTP gegevens juist voor een Hotmail mail adres?
Die variabele heeft geen waarde, en is ongedefinieerd.
De hele manier van controleren is fout en onlogisch.
Gebruik deze structuur.
<?php
if($_SERVER['REQUEST_METHOD'] =="POST") {
// handel het script af
} else {
// toon je formulier
}
?>
De fout die je meldt is niet te herleiden tot dit deel van je script. Er wordt in dit deel van je script namelijk nergens een array aangeroepen met een index 'verzenden'. Foutmelding komt dus of niet uit dit stuk, of je hebt iets aangepast voor of na je dit stuk poste.
Ik ben het via het boek aan het leren dus doe ik het nog even zo! Bedankt voor de tip maar wil nu niet te veel naast elkaar gaan leren nu eerst maar eens een script maken zonder fouten.
Daar mekkerde php ook nog niet over, desalniettemin was het een fout.
De fout waar php wel over mekkert is, zoals ik al zei, niet te herleiden naar wat je hier post. Met wat je dus laat zien kunnen we je niet verder helpen. Zoek dus nog eens goed naar waar de fout zit, want die zit of ergens anders, of je laat niet zien wat je echt hebt aan code.
<?php
ini_set ("SMTP", "mail.live.com");
ini_set ("smtp_poort" , 25);
ini_set ("sendmail_from" , "hier vul ik een hotmail adres in ");
if (isset($_POST["verzendbutton"]) != "verzenden") { // als het formulier leeg is
?>
<html>
<body>
<form action ="" method="post">
Naam: <input type = "text" name = "naam"><br>
E-mail: <input type = "text" name = "mailadres"><br>
Uw reactie: <textarea cols = "30" rows = "4" name = "reactie"></textarea><br>
<input type = "submit" value = "verzenden" name = "verzendbutton">
</form>
<?php
} else { // in alle andere gevallen (dus formulier verzonden
$boodschap = "Naam: ".$_POST["naam"]."\nCommentaar: ".$_POST["reactie"];
mail($_POST["mailadres"], "Uw reactie van de website", $boodschap);
echo "Bedankt ".$_POST["naam"].", fijn dat je mee wilde doen!";
}
?>
</body>
</html>