- Ontvangen bedankjes 0
Contact Form "Succes messenge" op dezelfde pagina
- Gast
-
- Gebruiker
-
Minder
Lees meer
17 okt 2015 18:28 #5341
door Gast
Contact Form "Succes messenge" op dezelfde pagina werd gestart door Gast
Hallo allemaal,
Ik heb via een article in joomla een contact form gemaakt met een php mail script. Nu mijn vraag? Ik wil graag dat als ik op versturen druk dat de echo melding van bijvoorbeeld "Bedankt voor u bericht" op dezelfde pagina verschijnt, ik heb hem werkend maar nu krijg ik een aparte pagina met links boven in de echo melding. Ik wil het graag onder het forum hebben zo dat het forum dan weer leeg is of dat het form weggaat en dan het bericht komt, en misschien na een aantal seconden het form weer verschijnt.
Als ik het bericht maar op dezelfde pagina kan krijgen.
Ik heb er ook een ip melding in gestopt maar die werkt niet.
Hier volgt de code.
[PHP]<p>
Tijdens onze live uitzendingen kunt u een verzoekje aanvragen of een reactie doen,<br />
dat kan via het onderstaande verzoek formulier.</p>
<form action="/mail.php" method="POST">
<p>
<strong>Naam:</strong></p>
<input name="name" size="25" type="text" />
<p>
<strong>Bericht:</strong></p>
<textarea cols="50" name="message" rows="20"></textarea><br />
<br />
<input type="submit" value="Versturen" /></form>
[/PHP]
en hier onder de mail.php >
[PHP]<?php $name = $_POST;
$message = $_POST;
$ip = $_SERVER;
$formcontent = "Naam: $name \n
Bericht: $message \n
\n
IP adres van de luisteraar: $ip";
$recipient = "[email protected]";
$subject = "Verzoekje Radio Regenboog";
$mailheader = "From: $recipient \r\n";
mail($recipient, $subject, $formcontent, $mailheader, $ip) or die("Error!");
echo "Thank You!";
?>[/PHP]
Ik heb via een article in joomla een contact form gemaakt met een php mail script. Nu mijn vraag? Ik wil graag dat als ik op versturen druk dat de echo melding van bijvoorbeeld "Bedankt voor u bericht" op dezelfde pagina verschijnt, ik heb hem werkend maar nu krijg ik een aparte pagina met links boven in de echo melding. Ik wil het graag onder het forum hebben zo dat het forum dan weer leeg is of dat het form weggaat en dan het bericht komt, en misschien na een aantal seconden het form weer verschijnt.
Als ik het bericht maar op dezelfde pagina kan krijgen.
Ik heb er ook een ip melding in gestopt maar die werkt niet.
Hier volgt de code.
[PHP]<p>
Tijdens onze live uitzendingen kunt u een verzoekje aanvragen of een reactie doen,<br />
dat kan via het onderstaande verzoek formulier.</p>
<form action="/mail.php" method="POST">
<p>
<strong>Naam:</strong></p>
<input name="name" size="25" type="text" />
<p>
<strong>Bericht:</strong></p>
<textarea cols="50" name="message" rows="20"></textarea><br />
<br />
<input type="submit" value="Versturen" /></form>
[/PHP]
en hier onder de mail.php >
[PHP]<?php $name = $_POST;
$message = $_POST;
$ip = $_SERVER;
$formcontent = "Naam: $name \n
Bericht: $message \n
\n
IP adres van de luisteraar: $ip";
$recipient = "[email protected]";
$subject = "Verzoekje Radio Regenboog";
$mailheader = "From: $recipient \r\n";
mail($recipient, $subject, $formcontent, $mailheader, $ip) or die("Error!");
echo "Thank You!";
?>[/PHP]
Discussie gesloten.
- Gast
-
- Gebruiker
-
Minder
Lees meer
- Ontvangen bedankjes 0
17 okt 2015 18:28 #5342
door Gast
Beantwoord door Gast in topic Contact Form "Succes messenge" op dezelfde pagina
Er zijn veel wegen die naar Rome leiden. Je verwijst met de action naar het bestand mail.php, hierdoor wordt dus deze pagina getoond op het moment dat het formulier verstuurd wordt. Ik neem aan dat je dit doet omdat je geen php kan plaatsen in een Joomla article. Je zou iets als Sourcerer kunnen installeren en dan de php op de pagina zelf plaatsen.
In dat geval krijg je iets als dit:
[PHP]
<p>
Tijdens onze live uitzendingen kunt u een verzoekje aanvragen of een reactie doen,<br />
dat kan via het onderstaande verzoek formulier.</p>
<?php
if(isset($_POST))
{
$name = $_POST;
$message = $_POST;
$ip = $_SERVER;
$formcontent = "Naam: " . $name . "\n Bericht: " . $message . "\n IP: " . $ip;
$recipient = "[email protected]";
$subject = "Verzoekje Radio Regenboog";
$mailheader = "From: " . $recipient . "\r\n";
mail($recipient, $subject, $formcontent, $mailheader, $ip) or die("Error!");
echo "Bedankt voor het versturen " . $name;
} else
{ ?>
<form method="POST">
<p>
<strong>Naam:</strong></p>
<input name="name" size="25" type="text" />
<p>
<strong>Bericht:</strong></p>
<textarea cols="50" name="message" rows="20"></textarea><br />
<br />
<input type="submit" value="Versturen" /></form>
<?php } ?>
[/PHP]
Je hebt in het stukje PHP een aantal punten waar je op moet letten:
- Als je teksten en variabelen met elkaar combineert dan moet je ze scheiden.
Fout:
[PHP]echo "Dit is tekst $name";[/PHP]
Goed: [PHP]echo "Dit is tekst " . $name;[/PHP]
- $_SERVER; moet zijn $_SERVER;
Door middel van de if / else structuur wordt of het formulier getoond, of de ingevulde gegevens verzonden:
[PHP]
if(isset($_POST))
[/PHP]
Dit checkt of $_POST gevuld is, zo ja dan is het formulier verstuurd en wordt het stukje code tussen {} uitgevoerd, zo niet dan wordt het formulier getoond.
In dat geval krijg je iets als dit:
[PHP]
<p>
Tijdens onze live uitzendingen kunt u een verzoekje aanvragen of een reactie doen,<br />
dat kan via het onderstaande verzoek formulier.</p>
<?php
if(isset($_POST))
{
$name = $_POST;
$message = $_POST;
$ip = $_SERVER;
$formcontent = "Naam: " . $name . "\n Bericht: " . $message . "\n IP: " . $ip;
$recipient = "[email protected]";
$subject = "Verzoekje Radio Regenboog";
$mailheader = "From: " . $recipient . "\r\n";
mail($recipient, $subject, $formcontent, $mailheader, $ip) or die("Error!");
echo "Bedankt voor het versturen " . $name;
} else
{ ?>
<form method="POST">
<p>
<strong>Naam:</strong></p>
<input name="name" size="25" type="text" />
<p>
<strong>Bericht:</strong></p>
<textarea cols="50" name="message" rows="20"></textarea><br />
<br />
<input type="submit" value="Versturen" /></form>
<?php } ?>
[/PHP]
Je hebt in het stukje PHP een aantal punten waar je op moet letten:
- Als je teksten en variabelen met elkaar combineert dan moet je ze scheiden.
Fout:
[PHP]echo "Dit is tekst $name";[/PHP]
Goed: [PHP]echo "Dit is tekst " . $name;[/PHP]
- $_SERVER; moet zijn $_SERVER;
Door middel van de if / else structuur wordt of het formulier getoond, of de ingevulde gegevens verzonden:
[PHP]
if(isset($_POST))
[/PHP]
Dit checkt of $_POST gevuld is, zo ja dan is het formulier verstuurd en wordt het stukje code tussen {} uitgevoerd, zo niet dan wordt het formulier getoond.
Discussie gesloten.