Frågor och svar

Tillbaka
Sökord:  

Hur sätter jag upp ett kommentarformulär?

Vårt standardskjema

Om du vill ha ett kommentarformulär på dina websidor, så att besökare kan skicka dig kommentarer med epost, så kan du använda vårat standard CGI-skript till det.

Detta förutsätter att du kan skriva lite HTML-kod.

Designa ett html-formulär (<FORM>) och sätt action="https://www.domainnameshop.com/cgi-bin/mailto.cgi" accept-charset="ISO-8859-1". Lägg in "hidden"-fält med värden för "_to", "_from", "_subject" och "_resulturl" inne i html-formuläret. Alla input-fält som inte börjar med underscore skickas som en del av själva epost-meddelandet.

Exempel: <form method="POST" action="https://www.domainnameshop.com/cgi-bin/mailto.cgi" accept-charset="ISO-8859-1">
<input type="hidden" name="_to" value="dittnamn@dindoman.se">
<input type="hidden" name="_from" value="dittnamn@dindoman.se">
<input type="hidden" name="_subject" value="Meddelande">
<input type="hidden" name="_resulturl" value="https://www.domainnameshop.com/eksempler/kvittering.html">
...
<input type="text" name="Felt1" value="Skriv in din fråga">
<input type="checkbox" name="Felt2" value="Ja">
<input type="radio" name="Felt3" value="1">
<input type="radio" name="Felt3" value="2">
... <input type="submit" value="Send"> </form>

Därefter loggar du på kontrollpanelen och registrerar epost-adressen du har lagt till i "_to"-fältet som en giltig mottagaradress för kommentarformulär. (Klicka på "Administrera webhotell" och därefter på "Se på/ändra" till höger om "Kommentarformulär".)


Designa formuläret själv

Om du har Webhotell Medium eller större, så kan du lägga ut egna PHP- eller CGI-scripts. Det passar användare med lite erfarenhet och som kan programmera.

Exempelkod i PHP följer nedan. Här har vi antagit att input-fälten från HTML-formuläret (det designar du själv!) heter "name" (insändarens namn), "email" (insändarens epost) och "message" (insändarens meddelande). Scriptet gör att du mottar ett mail, men kan inte klicka på "reply"/"svar" för att skicka svar tillbaka till den påstådda avsändaren.

<?php
// Hämta värden från formuläret
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];

// Se efter ogiltiga tecken i namn och epost-adress.
// Godta vissa europeiske specialbokstäver.
// Förhindra meddelanden längre än 500 tecken.
// Detta gör det svårt att spamma via kommentarformuläret.

if(preg_match("#[-a-zA-Z0-9éèÉÈäöæøåÄÖÆØÅ._ ]+#",$name) AND
   preg_match("#[-a-zA-Z0-9.@+!=()_:]+#",$email) AND
   strlen($message) < 500) {

  if (mail("dittnamn@dindoman.se", // din epost-adress
           "Meddelande från websidan", // ämne
           "Meddelande från $name <$email>:\n\n$message", // meddelandetext
           "From: Webside-meddelande < dittnamn@dindoman.se>" // insändare
          )) {
?>

<p>Meddelandet har skickats.</p>

<?php
  } else {
?>

<p>Kunde inte skicka meddelandet via epost,
vänligen kontakta oss via telefon eller brevpost istället.</p>

<?php
} else {
?>

<p>Ogiltigt försök. Det har loggats.
OBS: namn kan inte innehållaandra tecken än: <code>-a-z0-9éèäöæøå._</code>,
epost-adress endast <code>-a-zA-Z0-9.@+!=()_:</code>,
och meddelandet kan inte vara längre än 500 tecken.</p>
<p>Invalid request. The attempt has been logged.</p>

<?php
  # Här kan du koda en rutin som loggar försöket på att gå runt systemet!
}
?>

© 2023 Domeneshop AS · Om oss · Villkor · Dataskydd