Page 1 of 1
formulier mailen middels cgi script
Posted: 14 Apr 2005, 10:22
by iWaB
Ik probeer via mn website (
mailform ) een formulier te versturen naar een e-mail adres. ik heb begrepen dat dit middels een cgi script moet die ik in de dit "Cgi-bin" moet plaatsen ( die overigens niet in de root van mn site , maar een map daaronder ligt.
(de Site staat in httpdocs) alleen wat ik ook probeer ik krijg het niet aan de praat
Het lijkt mij dat als ik een bestand in de map "cgi-bin" zet dat ik deze dan ook in mn browser moet kunnen benaderen, dit lukt echter niet.
kan iemand me misschien vertellen hoe ik mn mail formulier aan de praat kan krijg.
Posted: 14 Apr 2005, 10:27
by blimmel
heb je het script met chmod 'executable' gemaakt?
chmod 755 mailform.cgi of zo
post je script eens
Posted: 14 Apr 2005, 11:08
by venomous
Je kan het beter met php doen dan cgi aangezien je toch php wel php gaat draaien denk ik (vanwege gastenboek).
En gooi eens al die links in het frame ipv _blank.
Posted: 14 Apr 2005, 11:43
by HobbeS
Ik sluit me aan bij venomous, met php is dit makelijk te maken en wil ik wel even een voorbeeld script posten..
Met cgi-bin heb ik geen ervaring...
Posted: 14 Apr 2005, 12:18
by iWaB
Als je dat wilt doen heel graag.
en dat php script kan ik dan gewoon in de root van mn website zetten?
Posted: 14 Apr 2005, 12:30
by JJapie
waar je maar wil

Posted: 14 Apr 2005, 13:22
by iWaB
dat zou mooi zijn ,,
Posted: 14 Apr 2005, 18:54
by HobbeS
Ok hier zijn de codes... Kijk maar of het je lukt...
Het contactforumlier waar alles ingevuld wordt. (contact.htm o.i.d.)
Code: Select all
<html>
<head>
<base target="onder">
<title></title>
</head>
<body bgcolor="#FFFFCC" style="font-family: Century Gothic" link="#000080" vlink="#000064" alink="#000080">
<p><b style="mso-bidi-font-weight:normal"><span style="font-size:14.0pt;mso-bidi-font-size:10.0pt;color:blue;text-transform:
uppercase">Contact<o:p>
</o:p>
</span></b></p>
<p>&</p>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="15%"></td>
<td width="70%">
<p>Voor eventuele vragen of opmerkingen kunt u mailen naar: <a href="mailto:mailadres@provider.nl">mailadres@provider.nl</a>,
of vult u het formulier hieronder in:</p>
<FORM METHOD=POST ACTION="verwerkFormulier.php">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="20%">Eigen e-mailadres*:</td>
<td width="80%"><input type="text" name="email" size="49"></td>
</tr>
<tr>
<td width="20%">Onderwerp:</td>
<td width="80%"><input type="text" name="onderwerp" size="49"></td>
</tr>
<tr>
<td width="20%" valign="top">Inhoud: </td>
<td width="80%"><textarea rows="6" name="inhoud" cols="37"></textarea></td>
</tr>
<tr>
<td width="20%" valign="top"></td>
<td width="80%">
<input type="submit" value="Verzenden" name="send_button"><input type="reset" value="Invoer wissen" name="clear_form">
</td>
</tr>
</table>
</form>
<p class="MsoNormal">* als u geen e-mail adres hebt of u wilt dit niet aan
ons bekend maken, vult u dan niets in wij kunnen dan helaas niet reageren.<br>
Al uw informatie wordt vertrouwelijk behandeld en zal niet aan
derden worden verstrekt.</p>
</td>
<td width="15%"></td>
</tr>
</table>
</body>
</html>
Verwerkingscode: (kan je noemen zoals je wilt bijvoorbeeld verwerkingFormulier.php)
Code: Select all
<?php
// eerst haal je de variabelen uit de post en geef je ze een andere naam
// het is dus $_POST['hier-komt-de-naam-van-het-veld-uit-het-formulier']
$mail = $_POST['email'];
$onderwerp = $_POST['onderwerp'];
$inhoud = $_POST['inhoud'];
// nu maken we van alle losse variabelen (gegevens) een boodschap
// dit wordt straks met een mailtje verstuurd :-)
$msg = "<u>E-mail Adres:</u> " . $mail . "<br>\n";
$msg .= "<u>Onderwerp: </u> " . $onderwerp . "<br>\n";
$msg .= "<u>Inhoud: </u> " . $inhoud . "<br><br>\n";
// nog wat extra gegevens aanmaken:
$to = "mailadres@provider.nl";
$subject = "Onderwerp dat je graag van het forumulier wilt hebben";
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: blabla@provider.nl\r\n";
$headers .= "Reply-To: $mail\r\n";
$headers .= "X-Mailer: PHP/" . phpversion();
// dit is de code waarmee het verstuurd wordt
if (!mail ($to, $onderwerp, $msg, $headers)){
$tekst = "Er is helaas iets foutgegaan bij het verzenden van het formulier";
echo ("$tekst");
}
else{
$tekst = "Het formulier is verzonden. Wij nemen zo snel mogelijk contact met u op...";
echo ("$tekst");
}
?>
De pagina geeft de informatie dus door naar het php bestand en die gooit het dan meteen in je mail..
Heb dit even snel uit een bestaande pagina die ik ooit heb gemaakt gecopierd... Kan dus info instaan die er uit kan...
Posted: 15 Apr 2005, 08:34
by iWaB
Thnx,
ik ga het ff proberen ,, ik laat wel weten of het gelukt is .
Posted: 15 Apr 2005, 10:10
by HobbeS
SucceS!
Posted: 18 Apr 2005, 10:55
by iWaB
Hij werkt Thnx

Posted: 18 Apr 2005, 12:16
by HobbeS
Harstikke mooi!