Fout in mail formulier

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Rubensky PHP starter

Rubensky PHP starter

10/07/2014 16:42:51
Quote Anchor link
Mensen,

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?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<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?

Ik gebruik een Xampp server (localhost)

Graag in het vervolg bij code, [code] [/code] tags gebruiken.[/modedit]
Gewijzigd op 11/07/2014 12:18:12 door Bas IJzelendoorn
 
PHP hulp

PHP hulp

28/04/2024 02:53:05
 
Erwin H

Erwin H

10/07/2014 16:54:20
Quote Anchor link
Als je een foutmelding krijgt, zet die er dan ook even bij. Dat helpt enorm bij het zoeken naar de fout.

Wat hier in elk geval fout gaat is dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$POST
["naam"]
//en
$POST["mailadres"]
?>

Voorbeeldje van niet secuur genoeg werken.
 
Rubensky PHP starter

Rubensky PHP starter

10/07/2014 16:59:17
Quote Anchor link
Sorry ik was de fout inderdaad vergeten: Notice: Undefined index: verzenden in C:\xampp\htdocs\webshop\formulier\mailform2.php on line 10

Ik begrijp alleen niet waar jij de fout hebt gevonden in mijn script staat er toch ["naam"]? line 3 2de deel?
 
- Ariën  -
Beheerder

- Ariën -

10/07/2014 17:05:58
Quote Anchor link
Die variabele heeft geen waarde, en is ongedefinieerd.

De hele manier van controleren is fout en onlogisch.
Gebruik deze structuur.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
if($_SERVER['REQUEST_METHOD'] =="POST") {
// handel het script af
} else {
// toon je formulier
}
?>
Gewijzigd op 10/07/2014 17:07:20 door - Ariën -
 
Erwin H

Erwin H

10/07/2014 17:06:43
Quote Anchor link
Er staat $POST en dat moet zijn $_POST.

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.
 
Rubensky PHP starter

Rubensky PHP starter

10/07/2014 17:07:56
Quote Anchor link
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.

Ik heb $_POST gedaan nog steeds heb ik de fout
Gewijzigd op 10/07/2014 17:10:39 door Rubensky PHP starter
 
- Ariën  -
Beheerder

- Ariën -

10/07/2014 17:11:46
Quote Anchor link
Dat boek staat vol fouten en onvolkomenheden kan ik je vertellen.
 
Rubensky PHP starter

Rubensky PHP starter

10/07/2014 17:12:56
Quote Anchor link
Daar ben ik inmiddels ook achter maar toch kan je het volgens mij best wel eruit leren als je de fouten er tenminste uit kan krijgen :(
 
Erwin H

Erwin H

10/07/2014 17:20:58
Quote Anchor link
Ruben van Heteren op 10/07/2014 17:07:56:
Ik heb $_POST gedaan nog steeds heb ik de fout

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.
 
H Kse

H Kse

10/07/2014 17:24:20
Quote Anchor link
om je foutmeldingen te verhelpen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?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>
 
- SanThe -

- SanThe -

10/07/2014 17:50:50
Quote Anchor link
H Kse op 10/07/2014 17:24:20:
om je foutmeldingen te verhelpen


Creeer jij weer nieuwe....

Je sluit </body></html> zonder dat ze open zijn (in de else).
Gewijzigd op 10/07/2014 17:51:21 door - SanThe -
 
Rubensky PHP starter

Rubensky PHP starter

10/07/2014 21:13:16
Quote Anchor link
Ik begrijp het ik heb nu weer een formulier met een fout kan iemand helpen en simpel uitleggen wat er fout gaat?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<html>
<head>
<title>Mailformulier </title>
</head>
<body>
<?php
ini_set("SMTP", "mail.live.com");
ini_set("smtp_poort", 25);
ini_set("sendmail_from", "mailadres");
if($_POST["verzendbutton"] != "verzenden" || !$_POST["naam"] ||
!
$_POST["mailadres"] ||
    !
$_POST["reactie"]) { // dus als het formulier leeg is of de waarde niet zijn ingevuld
?>

<form action="mailform3.php" method = "post">
<?php
if ($_POST["verzendbutton"] && !$_POST["naam"]) {
!
$_POST["mailadres"] ||
!
$_POST["reactie"] {
echo "<font color=\"red\"> Vul hier uw mailadres in</font><br>";
}

?>

naam: <input type = "text" name = "naam" value ="<?php echo $_POST =["naam"]
?>
"><br>
<?php
if ($_POST["verzendbutton"] && !$_POST["mailadres"]) {
echo "<font color =\"red\"> Vul hier uw mailadres in!</font><br>";

}

?>

E-mail: <input type = "text" name ="mailadres" value="<?php echo $_POST["mailadres"] ?>"><br>
<?php
if ($_POST["verzendbutton"] && !$_POST["reactie"]) {
    echo "<font color=\"red\">Vul hier uw reactie in!</font<br>";
}

?>

Uw reactie": <textarea cols="30"rows ="4" name="reactie"><?php echo $_POST["reactie"] ?> </textarea>
<input type = "submit" value ="verzenden" name ="verzendbutton">
</form>
<?php
} else {
$boodschap = "Naam: ".$_POST["naam"]."\ncommentaar: ".$_POST["reacrie"];
mail($_POST["mailadres"], "Uw reactie van de website", $boodschap);
echo "Bedankt ".$_POST["naam"].", fijn dat je mee wilde doen!";
}

?>

</body>
</html>
Gewijzigd op 11/07/2014 12:18:42 door Bas IJzelendoorn
 
- Ariën  -
Beheerder

- Ariën -

10/07/2014 21:37:34
Quote Anchor link
Zou je het script tussen code-tags willen plaatsen, zie daarvoor de Veel Gestelde Vragen.

Verder is het verstandiger om eens naar mijn vorige reactie te kijken, en deze proberen te implementeren.
Gewijzigd op 10/07/2014 21:38:04 door - Ariën -
 
Pipo Clown

Pipo Clown

11/07/2014 00:23:34
Quote Anchor link
Ruben van Heteren op 10/07/2014 21:13:16:
Ik begrijp het ik heb nu weer een formulier met een fout kan iemand helpen en simpel uitleggen wat er fout gaat?


Ik neem aan dat wij wederom zelf moeten gaan raden wat de foutmelding is ?
Helaas, dat soort grappen stop ik echt mee.

Verder zou ik je willen adviseren om je PHP en HTML zo veel mogelijk te scheiden.
Normaal begin je bovenaan met PHP en wanneer dat afgerond is plaats je daaronder de HTML

Wat je nu doet is er een zooitje van maken. HTML tags worden al dan niet geopend of afgeloten fhankelijk van ee paar regels PHP tussendoor zonder dat er ook maar enige structuur in zit.

Kijk eens of dat boek het ook heeft over inspringen van de code om één en ander een beetje duidelijker en overzichtelijker te krijgen.
 
Erwin H

Erwin H

11/07/2014 00:49:05
Quote Anchor link
Ik neem aan dat dit de laatste keer is dat je de foutmelding erbij vergeet te vermelden.

Maar als ik een gok waag, denk ik (weet ik) dat het hier in elk geval mis gaat.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if ($_POST["verzendbutton"] && !$_POST["naam"]) {
!
$_POST["mailadres"] ||
!
$_POST["reactie"] {
?>

Op regel 1 van dit stukje heb je een if statement, dat je afsluit middels het sluitende haakje. Dan open je het code blok met de accolade..... en dan komen er nog wat zwevende condities achteraan. Dat kan natuurlijk niet.
 
Rubensky PHP starter

Rubensky PHP starter

23/07/2014 20:58:18
Quote Anchor link
Mensen ik ben verder gegaan met mijn hierboven staande formulier maar krijg als ik het wil openen krijg ik de volgende foutmelding:

Parse error: syntax error, unexpected 'echo' (T_ECHO) in C:\xampp\htdocs\webshop\formulier\mailform3.php on line 19
 
- Ariën  -
Beheerder

- Ariën -

23/07/2014 21:04:16
Quote Anchor link
Ah, ik zie hem. Je hebt een accolade teveel.
Gewijzigd op 23/07/2014 21:06:07 door - Ariën -
 
Rubensky PHP starter

Rubensky PHP starter

23/07/2014 21:05:23
Quote Anchor link
Waarom je glazenbol? de code is de bovenstaande!
 
- Ariën  -
Beheerder

- Ariën -

23/07/2014 21:06:55
Quote Anchor link
Tweede lijn van je stukje relevante code, accolade teveel.
 
Rubensky PHP starter

Rubensky PHP starter

23/07/2014 21:12:17
Quote Anchor link
Kan je me helpen geen idee welke je bedoeld.
 
- Ariën  -
Beheerder

- Ariën -

23/07/2014 21:13:12
Quote Anchor link
Die eerste in je if aan het einde van lijn 2... daarna ga je gewoon lekker door met je statement en dat kan natuurlijk niet.
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.