16 berichten aan het bekijken - 1 tot 16 (van in totaal 16)
  • Q:
    Bijdrager
    Soedjono84

    php vraagje

    Hallo,

    Ik bezig met een simpele webformulier.

    Nou heb ik de volgende php code:

    [code:1:3df6750233]<?php
    ini_set("SMTP", "localhost");
    ini_set("smtp_port", 25);
    ini_set ("sendmail_from", "[email protected]");
    $to = $_POST["to"];
    $subject = $_POST["subject"];
    $redirect = $_POST["redirect"];
    if (!$to) { // Bevat to geen waarde?
    echo "U heeft geen ontvanger opgegeven!";
    exit;
    }

    reset($_POST); // Zet de array pointer op 0, begin bij het begin
    while($postvar = each($_POST)) {
    $varnaam = $postvar[’key’];
    $varinhoud = $postvar[’value’];
    $boodschap .= $varnaam."=".$varinhoud."n"; // Boodschap bevat
    }

    mail($to, $subject, $boodschap); // stuur de mail (aan, onderwerp, mail)

    if (isset($redirect)) { // Bevat redirect een waarde?
    header("location: $redirect");
    }

    ?>
    [/code:1:3df6750233]

    Wanneer ik het formulier invul en de gegevens van het formulier per mail binnen krijg, krijg ik alleen als afzender ‘[email protected]’ en geen [email protected].

    Hoe kan dit?

    (ik zit bij mijdomein.nl)

    Alvast bedankt.

    Bijdrager
    Nielsvr

    Afgezien dit nog steeds onveilig is, omdat je de mail opmaakt op basis van het aantal velden dat in het formulier zit, wat dus beinvloed kan worden door de client, zou dit moeten werken.

    [code:1:77fd35d741]<?php

    $to = htmlspecialchars(trim($_POST["to"]));
    $subject = htmlspecialchars(trim($_POST["subject"]));
    $redirect = htmlspecialchars(trim($_POST["redirect"]));

    $headers = "From: [email protected]";
    $headers .= "Reply-To: [email protected]";
    $headers .= "Content-Type: text/html; charset=iso-8859-1rn";

    if (strlen($to) === 0) { // Bevat to geen waarde?
    echo "U heeft geen ontvanger opgegeven!";
    exit;
    }

    reset($_POST); // Zet de array pointer op 0, begin bij het begin
    while($postvar = each($_POST)) {
    $varnaam = htmlspecialchars(trim($postvar[’key’]));
    $varinhoud = htmlspecialchars(trim($postvar[’value’]));
    $boodschap .= $varnaam."=".$varinhoud."n"; // Boodschap bevat
    }

    mail($to, $subject, $boodschap, $headers); // stuur de mail (aan, onderwerp, mail)

    if (strlen($redirect) !== 0) { // Bevat redirect een waarde?
    header("location: $redirect");
    }

    ?>[/code:1:77fd35d741]

    Bijdrager
    The JM

    Misschien een afzender definiëren?

    Bijdrager
    Tomaat
    ”The

    Misschien een afzender definiëren?

    Ga JIJ nu bijdehand doen joh?:P

    Bijdrager
    The JM
    ”Tomaat”
    ”The

    Misschien een afzender definiëren?

    Ga JIJ nu bijdehand doen joh?:P

    Haha ja IK ja:P

    Bijdrager
    Soedjono84

    Misschien een afzender definiëren?

    The JM:

    Dit heb ik toch gedaan met ini_set (“sendmail_from”, “[email protected]”); ?

    Of zie ik het verkeerd?

    Nielsvr:

    Ik zal jouw code analyseren. Ik ben namelijk nieuw met php. Bedankt.

    Bijdrager
    All-Father

    Is het sendmail_path in de php.ini misschien ingesteld op [email protected] ?

    Bijdrager
    Soedjono84

    Het sendmail_path staat op /usr/sbin/sendmail -t -i

    Wat betekend dit?

    Bijdrager
    All-Father
    ”MacGarage”

    Het sendmail_path staat op /usr/sbin/sendmail -t -i

    Wat betekend dit?

    Dan staat er in ieder geval geen emailadres als default afzender ingesteld.

    Waarom niet gewoon gebruik maken van:

    [code:1:3657a11f95]$afzender="[email protected]";
    mail($to, $subject, $boodschap, "From: ".$afzender); [/code:1:3657a11f95]

    Bijdrager
    Soedjono84

    $afzender=”[email protected]”;
    mail($to, $subject, $boodschap, “From: “.$afzender);

    Dit werkt. Alleen bij ‘verzonden door’ staat er het gegeven ‘geen punt’ waar ik niet tevreden mee ben (zie plaatje hieronder)

    Hoe kan ik dit wijzingen?

    Bijdrager
    Philo

    [code:1:3bd01afd1d]$afzender = ‘From: JeNaam <[email protected]>’ . "rn";

    mail($to, $subject, $boodschap, $afzender); [/code:1:3bd01afd1d]

    Weet niet zkr of dit werkt;)

    Bijdrager
    Soedjono84

    $afzender = ‘From: JeNaam <[email protected]>’ . “rn”;

    mail($to, $subject, $boodschap, $afzender);

    Dit werkt niet. Het is trouwens hetzelfde code als die van Marie van Zutphen, alleen dan anders geschreven. Maar van Marie lukt wel, alleen het probleem is nog steeds daar.

    Ik heb het code van Nielsvr ook geprobeerd, lukt ook, alleen nog niet met mijn eigen gegevens bij ‘verzonden door’.

    Bijdrager
    Tomaat

    Kan het niet zo zijn dat de server waar je dit script op uitvoert zo is geconfigureerd dat de afzender altijd ‘geenpunt.nl’ is? Is aanneemelijk om bijvoorbeeld spam tegen te gaan..

    Bijdrager
    All-Father
    ”Tomaat”

    Kan het niet zo zijn dat de server waar je dit script op uitvoert zo is geconfigureerd dat de afzender altijd ‘geenpunt.nl’ is? Is aanneemelijk om bijvoorbeeld spam tegen te gaan..

    Er is geen afzender geconigureerd in het sendmail_path anders zou het er zo uitzien:

    sendmail_path = /usr/sbin/sendmail [email protected] -oi -t

    Bijdrager
    Tomaat

    Waar komt die geenpunt.nl vandaan dan?

    Bijdrager
    DesertDog

    geenpunt.nl komt van de mailserver die de mail verstuurd. De mail die vanaf de site wordt verstuurd wordt via een geenpunt.nl mailserver verstuurd dus

16 berichten aan het bekijken - 1 tot 16 (van in totaal 16)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.