Status
Niet open voor verdere reacties.
Hoe een formulier maken in php
Liefst een werkbare code die alleen nog naar persoonlijke voorkeur aan te passen is
 
php wat zecht dit inhoudelijk -wat kan ik er mee doen -ik ben nog steeds aan het leren hoe een en ander in elkaar zit .de vriendelijke groeten
 
Formulier maken is geen probleem maar in de action een werkbare code in php maken is het probleem.
 
Je hebt het nog helemaal niet gehad over wat je nu wil met dat formulier?
Ingevulde gegevens in een database zetten, de ingevulde gegevens mailen etc.

Iets specifieker zou wel fijn zijn ;).
 
Ik maak sites voor de parochiefederatie zemst, BFRC (Belgian Flatcoated Retriever Club) bfrc.be en eigen lourdeshofstade.net
De site voor de parochiefederatie is voorlopig nog niet online (alles is klaar maar de indexpagina daarom nog niet online gezet)


Deze staat in de actie van het formulier en dat werkt goed. Maar ik had graag in de actie een php code die het formulier kan zenden naar meer dan één mailadres ontvanger.
We hebben domein en hosting genomen bij one.com
Bij een andere site die ik verzorg voor www.bfrc.be is de hosting genomen bij priorweb.be en daar kan je een heel werkbare mail.php downloaden. Bij one.com is dat niet mogelijk. Daarom mijn vraag.
NB De code van priorweb.be had ik aangepast en dacht deze dan te kunnen gebruiken bij one.com, maar het werkt niet.

Hierbij de codes:
Code bij one.com
Om het script van FormMail te activeren, dient u de volgende code te gebruiken (dit is slechts een voorbeeld - u dient in de velden mogelijk verschillende codes in te voeren):

<FORM method="post" action="http://www.federatie-zemst.be/cgi-bin/FormMail.pl">
<input type="hidden" name="recipient" value="webmaster@federatie-zemst.be">
<input type="hidden" name="subject" value="Aanvraag Misintentie">
<input type="hidden" name="redirect" value="http://www.federatie-zemst.be">
</FORM>

Code php bij priorweb: (hoe deze werkbaar te maken voor gebruik bij one.com?
<?
/*
mail.php - versie 1.3 (20051010)
Jimmy Cappaert <jimmy@priorweb.be>
http://www.priorweb.be

Wijziging versie 1.3
- veldcontrole is nu configureerbaar per veld ($BODY_FIELDS_CHECK)
- veldspecifiëring is aangepast ($BODY_FIELDS)
-Cedric Dubois <cedric.dubois@priorweb.be>

Wijzigingen versie 1.2
- mogelijkheid om veldcontrole uit te schakelen
- na het versturen de pagina forwarden naar een andere pagina ipv een melding te geven
-Jimmy Cappaert <jimmy.cappaert@priorweb.be>

Deze code heeft als doel te fungeren als een mailer voor een HTML-formulier.
U kan deze file specifiëren in de ACTION van uw HTML-formulier.
*/

ob_start();

// INVULSECTIE
// GELIEVE DIT EERST IN TE VULLEN ALVORENS HET FORMULIER IN GEBRUIK TE NEMEN

// Het adres naar waar de e-mail moet afgeleverd worden (verplicht)
// Dit kan in 2 vormen: Uw naam <uw@adres.be> of gewoon uw@adres.be.
$HEADER_TO = "Marie Claire <secr@bfrc.be>" ;
// Het adres waar een CC van de e-mail moet afgeleverd worden (niet verplicht)
$HEADER_CC = "Ruud <ruudenyvonne.blackimpression@telenet.be>";
// Het adres waar een BCC van de e-mail moet afgeleverd worden (niet verplicht)
$HEADER_BCC = "Bert<redac@bfrc.be>";
// De afzender van de e-mail
$HEADER_FROM = "priorMailer <webmaster@bfrc.be>";
// Het onderwerp van de e-mail
$HEADER_SUBJECT = "Nieuwjaarsreceptie 2010";

// Tip: je kan hier altijd een file includen om eventuele tekstopmaak in te plaatsen.
// Includen kan op volgende manier: include("../Hoofdmappen/bestandsnaam.php");
// Je kan ook HTML code in de variablen zetten. (bv linebreaks, fonts, ...)

// Naam en beschrijving van de velden die verstuurd moeten worden
// Bv array('naam'=>'Naam', 'voornaam'=>'Voornaam');
$BODY_FIELDS = array('naam'=>'naam', 'voornaam'=>'voornaam', 'straat'=>'straat','nr'=>'nr','post'=>'post', 'gemeente'=>'gemeente','land'=>'land','tel'=>'tel','email'=>'email','commentaar'=>'commentaar','lid'=>'lid','deelnemers'=>'deelnemers');
// Tekst die bovenaan (boven de velden) van de e-mail moet staan. Gebruik \n voor een nieuwe lijn.
$BODY_HEADER = "Inschrijving Nieuwjaarsreceptie 2010 BFRC :";
// Tekst die onderaan (onderaan de velden) van de e-mail moet staan. Gebruik \n voor een nieuwe lijn.
$BODY_FOOTER = "Einde van het bericht.";
// Moet het IP-adres van de verzender van het formulier mee verzonden worden? (1 = ja / 0 = neen)
$BODY_SHOWIP = 1;

// Controle of de velden allemaal werden ingevuld? (1 = ja / 0 = neen)
$RESULT_DOCHECK = 0;
// Indien u enkel bepaalde velden wenst te controleren, geef deze hier op en vul
// hierboven 0 in ($RESULT_DOCHECK = 0;)
$BODY_FIELDS_CHECK = array('naam'=>'naam', 'voornaam'=>'voornaam', 'straat'=>'straat','nr'=>'nr','post'=>'post', 'gemeente'=>'gemeente','land'=>'land','email'=>'email','lid'=>'lid','deelnemers'=>'deelnemers');
// Welke boodschap moet er weergegeven worden wanneer een veld niet werd ingevuld?
// Na de boodschap volgt de betreffende veldnaam.
$RESULT_FIELDMISSING = "Volgend veld werd niet ingevuld:";

// Boodschap weergeven bij succesvol versturen van formulier, of redirect naar een andere pagina? (1 = boodschap / 0 = redirect)
$RESULT_SUCCESS_TYPE = 0;
// Boodschap na het succesvol versturen van het formulier. Gebruik \n voor een nieuwe lijn. (enkel als u bij $RESULT_SUCCESS_TYPE '1' hebt staan)
$RESULT_SUCCESS_MSG = "Het formulier werd verstuurd.";
// Pagina om naar te forwarden na het succesvol versturen van formulier. (enkel als u bij $RESULT_SUCCESS_TYPE '0' hebt staan)
$RESULT_SUCCESS_URL = "dank.htm";

// Boodschap na het niet succesvol versturen van formulier. Gebruik \n voor een nieuwe lijn.
$RESULT_FAIL_MSG = "Sorry, het formulier kon niet verstuurd worden. Probeer later opnieuw.";


// EINDE INVULSECTIE
// U BENT VRIJ DE CODE DIE HIERONDER STAAT AAN TE PASSEN, MAAR BEDENK DAT U DAN HIEROP
// GEEN SUPPORT MEER ZAL KRIJGEN


if (count($BODY_FIELDS) < 1) {
echo "Sorry, er moet minstens 1 veld zijn om te verzenden!\n";
return 0;
}

if($RESULT_DOCHECK == 1) {
foreach($BODY_FIELDS as $key=>$value) {
if(!$_POST[$key]) {
$STOP_SCRIPT = 1;
echo $RESULT_FIELDMISSING." ".$BODY_FIELDS[$key]."<br>\n";
}
}
} elseif(count($BODY_FIELDS_CHECK) > 0) {
foreach($BODY_FIELDS_CHECK as $value) {
if(!$_POST[$value]) {
$STOP_SCRIPT = 1;
echo $RESULT_FIELDMISSING." ".$BODY_FIELDS[$value]."<br>\n";
}
}
}

if($STOP_SCRIPT == 1) {
return 0;
}

$BODY_MESSAGE_FIELDS = "";
foreach($BODY_FIELDS as $key=>$value) {
$BODY_MESSAGE_FIELDS .= stripslashes($value.": ".$_POST[$key]."\n");
}

$BODY_HEADERS = "From: $HEADER_FROM\n";
$BODY_HEADERS .= "Cc: $HEADER_CC\n";
$BODY_HEADERS .= "Bcc: $HEADER_BCC";
$BODY_MESSAGE = $BODY_HEADER."\n\n";
$BODY_MESSAGE .= $BODY_MESSAGE_FIELDS."\n";
$BODY_MESSAGE .= $BODY_FOOTER."\n";

if($BODY_SHOWIP == 1) {
$IP = (getenv(HTTP_X_FORWARDED_FOR))
? getenv(HTTP_X_FORWARDED_FOR)
: getenv(REMOTE_ADDR);
$BODY_MESSAGE .= "IP-adres verzender: $IP";
}

mail($HEADER_TO, $HEADER_SUBJECT, wordwrap($BODY_MESSAGE), $BODY_HEADERS) or die($RESULT_FAIL);

if($RESULT_SUCCESS_TYPE == 1) {
echo $RESULT_SUCCESS_MSG;
} else {
header("Location: $RESULT_SUCCESS_URL");
}
?>
 
Laatst bewerkt:
goede middag ivojanssen ik kan nog niet specifier zijn omdat ik helemaal niet weet wat ik allemaal kan doen met dit formulier .ik heeft inmiddels van antwanneke een paar
goede tips gekregen waar ik mee aan het leren gaat ,maar dit zou wel een poosje duren want ik ben nog niet zo handig met mijn laptopje .maar bij deze öök u bedankt voor uw reactie .
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan