Fout In Script?

  • Onderwerp starter Onderwerp starter iKnow
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

iKnow

Gebruiker
Lid geworden
31 aug 2012
Berichten
44
Hallo!

ik ben bezig geweest met mijn eigen verzend script voor mijn website.
http://koen-smulders.nl Alleen deze werkt niet helemaal goed.

Zoals hij nu staat werkt hij niet. Maar als ik een paar dingen verander werkt hij goed maar komt er het email adres van mij webhost te staan.
Als ik dat opgelost wil hebben komt de naam van de contact persoon er niet in te staan.

Iemand een oplossing? Het script staat hieronder.

Dit is hem:
PHP:
<?php
if (isset($_REQUEST['submit']))
//if "email" is filled out, send email
  {
  //send email
  $email = $_REQUEST['email'] ;
  $name = $_REQUEST['name'] ;
  $message = $_REQUEST['message'] ;
  mail("info@mijndomein.nl", "Contact: Koen Smulders", "From: $email", $message, $name");
}
?>

Mvg, Koen
 
Laatst bewerkt door een moderator:
ik zou persoonlijk geen $_REQUEST gebruiken want je weet dat het een post of een get moet zijn. Met $_REQUEST mag het 1 van de twee zijn.

Daarnaast zou ik je voor een goede mail opzet even naar de php manual verwijzen en dan voorbeeld 4, hierstaan de headers zeer goed uitgelegd wat je zoekt.
http://php.net/manual/en/function.mail.php
 
Zou, iemand niet even dat voor mij kunnen maken.
Want bij mij mislukt het telkens. Ik weet niet hoe dat komt.

Dit zijn de velden; Name, Email, Message.
Er hoeven geen errors enzo bij maar als het mailtje er ongeveer zo uit kan komen te zien:

----------------------------------
info@zender.nl
----------------------------------
Onderwerp; Contact
----------------------------------
Naam: Naam
Message; Message
----------------------------------
 
Hallo Koen,

Als je zelf even je stukje code leest zie je dat het hele kleine foutje waar het gehele script over struikelt.
Kijk maar naar het einde van de mail functie. Dan zie je na $name een ". Als je die weghaalt is het opgelost.

Groetjes Sentmen.
 
EDIT; Ze komen binnen maar,

Bij de email van de persoon van wie het vestuurd is staat de email van de Hosting.
Daar wil ik de email van de persoon zelf.
 
Laatst bewerkt:
Hallo Koen,

Ik denk dat het niet mogelijk is bij je huidige provider. Als ik jou was zou ik eens contact opnemen bij je hosting provider. Kan je anders misschien even de naam van je hosting provider geven?

Groetjes Sentmen.
 
Tuurlijk, ik zit bij 000webhosting. Al jaren en redelijk goed.

Maar, ik heb al vaker gehad met andere scripts die ik op het internet vond dat er soms ook
gewoon het email adres van de gebruiker (in dit geval ben ik dat) bovenaan kwam te staan.

Weet niet meer bij welk script.
 
Je zal hiervoor headers moeten gebruiken om de mail van een andere persoon te laten versturen. Zie de link die ik eerder heb gepost van php mail functie. Daarin staat wat jij wilt.
 
Hey!

Dat heb ik inderdaad goed doorgelezen en geprobeerd met headers te fixen.
Alleen dit lukte ook niet. Of althans, de email from kwam weer van de server.
Maar dit heb ik ook anders gehad met een script van iemand anders.

Kan iemand me nog verder helpen?
 
Oplossing Gevonden Guys!

Ik heb het even via Google gezocht. Alleen dan met een andere zoekterm.
Kwam bij dit script uit. Werkte Perfect!

PHP:
<?php
//definieer verzendopties 
$ontvanger = 'je_eigen_em@iladres.tld'; 
$onderwerp = 'Emailformulier PHPBoek'; 

//stel bericht op 
$bericht = 'Naam: '.$_POST['naam'].' 
Email: '.$_POST['email'].' 

Bericht: '.$_POST['bericht']; 

//stel verzend-header op 
$verzender = 'From: '.$_POST['naam'].' <'.$_POST['email'].'>'; 

//verzend bericht 
if (mail($ontvanger, $onderwerp, $bericht, $verzender)) { 
    //succesmelding als correct verzonden 
    echo '<p>Bericht is succesvol verzonden.</p>'; 
} 
else { 
    //foutmelding als niet verzonden 
    echo '<p>Er is een fout opgetreden bij het verzenden van het bericht. Probeer het later nogmaals.</p>'; 
}
?>
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan