Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

PHP en HTML-opmaak

None
9 antwoorden
  • Heb een probleem met de combinatie PHP/HTML, Google gaf mij geen verdere informatie…

    Op een website heb ik een PHP-aanvraagformulier:
    [code:1:24d0cc03c4]if (isset($error))
    {
    // Als er een error is printen

    echo "<b>Fout. Aanvraag is onvolledig.</b><br><br><br>";
    echo "<b>Vult u alstublieft de volgende gegevens in:</b><br>";
    echo $error . "<br>";

    echo "<a href=\"javascript:history.back(-1)\">Ga terug</a>";
    }

    else
    {
    $message .= " Op ".date("d-m-Y")." om ".date("H:i")." is de volgende aanvraag binnengekomen:";
    $message .= " <br><br><b>Gegevens aanvrager:</b><br />";
    $message .= " Ip: " . $_POST['ip']."<br />";
    $message .= " Aanhef: " . $_POST['aanhef']."<br />";
    $message .= " Voornaam: " . $_POST['voornaam']."<br />";
    $message .= " Naam: " . $_POST['naam']."<br />";
    $message .= " Bedrijfsnaam: " . $_POST['bedrijfsnaam']."<br />";
    $message .= " Functie: " . $_POST['functie']."<br />";
    $message .= " Adres: " . $_POST['adres']."<br />";
    $message .= " Postcode: " . $_POST['postcode']."<br />";
    $message .= " Plaats: " . $_POST['plaats']."<br />";
    $message .= " Telefoonnummer: " . $_POST['telefoonnummer']."<br />";
    $message .= " Faxnummer: " . $_POST['faxnummer']."<br />";
    $message .= " E-mail adres: " . $_POST['email']."<br />";
    $message .= " Mailing?: " . $_POST['mailing']."<br />";[/code:1:24d0cc03c4]
    Wanneer het formulier gesubmit wordt krijg ik de aanvraag per e-mail binnen. In Outlook (platte tekst) komen de velden netjes onder elkaar, maar wanneer ik zo''n aanvraag door laat sturen naar bijv. Outlook Express [HTML] krijg ik het volgende te zien:[code:1:24d0cc03c4]
    Content-type: text/html; charset=iso-8859-1
    From: XXX <xx@xxxxx.nl>


    Op 15-07-2004 om 08:42 is de volgende offerteaanvraag binnengekomen: <br><br><b>Gegevens aanvrager:</b><br /> Ip: xxx.xxx.233.xx<br /> Aanhef: de heer<br /> Voornaam: XXX<br /> Naam: XXXX<br /> Bedrijfsnaam: Lege B.V.<br /> Functie: <br /> Adres: Golden retriever 25a<br /> Postcode: 222<br /> Plaats: uuu<br /> Telefoonnummer: 030<br /> Faxnummer: <br /> E-mail adres: xx@xxxxx.nl<br />[/code:1:24d0cc03c4]

    Hoe kan ik in mijn PHP-code er voor zorgen dat ik de ingevulde velden netjes onder elkaar krijg en evt. met opmaak?

    Alvast bedankt voor jullie hulp…
  • @Moderator:

    Excuses voor plaatsing in het verkeerde topic: zou deze verplaatst kunnen worden naar [b:d18d427449]Webprogrammeren & scripting[/b:d18d427449]?

    Bij voorbaat dank.
  • Ben je zeker dat het niet omgekeerd is?
  • [quote:e6ca95c7db="BelgiumBoy_007"]Ben je zeker dat het niet omgekeerd is?[/quote:e6ca95c7db]
    Het is toch web-programmeren waar dit thuis hoort?
  • Ik was onduidelijk, sorry.

    Ik bedoel het probleem.

    Het lijkt mij logischer dat als je de e-mail met HTML bekijkt dat ze dan in orde is, en als je ze als text bekijkt dat je dan de code krijgt.
  • Normaal gesproken lees ik wel HTML-mail in OE;
    Ik gebruik trouwens onderstaande code om evt, onderscheid te maken:
    [code:1:3b95aed27e]

    $onderwerp = "Aanvraag";

    if ($html == 'off')
    {
    $headers = "MIME-Version: 1.0
    ";
    $headers .= "Content-type: text/html; charset=iso-8859-1
    ";
    $headers .= "From: ".$_POST['naam']." <".$_POST['email'].">
    ";
    }
    else
    {
    $headers = "From: ".$_POST['naam']." <".$_POST['email'].">
    ";
    } [/code:1:3b95aed27e]
    Zit hier een fout in?
  • Persoonlijk gebruik ik altijd:[code:1:b71de64d7b] $headers .= "MIME-Version: 1.0
    ";
    $headers .= "Content-type: text/html; charset=iso-8859-1
    ";
    $headers .= "Reply-To: $from
    Cc:$cc
    Bcc:$bcc
    from:$from"; [/code:1:b71de64d7b]Ik weet wel niet of die \r veel verschil maakt, maar bij mij werkt het perfect.
  • [quote:c0b430ffaf="Ederveen"]@Moderator:

    Excuses voor plaatsing in het verkeerde topic: zou deze verplaatst kunnen worden naar [b:c0b430ffaf]Webprogrammeren & scripting[/b:c0b430ffaf]?

    Bij voorbaat dank.[/quote:c0b430ffaf]Geen dank ;)
  • Je moet zorgen dat de emailprogramma weet dat je email in html formaat is, en niet platte tekst. Dat doe je door in de header "Content-type: text/html; charset=iso-8859-1" (oid, een andere charset kan ook, maar weet wel wat je doet! anders zo laten) toe te voegen.

    Zoals in ederveen's voorbeeld.

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.