|  | 		    
					
        
         
          
         
	
          | |  | Mailform Fra : Mark Thomas Gazel
 | 
 Dato :  28-06-06 15:46
 | 
 |  | 
 
            Hej
 Findes der en god open source mailform med mulighed for at sende til 
 forskellige modtagere?
 Dem jeg har kunnet finde var bare med én modtager.
 Det vil sige fx en dropdown, hvor man vælger:
 chef
 regnskab
 reklame
 klager
 Og videre i den dur.
 Mailadresserne skal selvfølgelig være så sikrede som overhovedet muligt, men 
 plejer de jo at være med en php-form.
 På forhånd tak.
 -- 
 Med venlig hilsen
 Mark
http://mark.gazel.dk/ |  |  | 
  Dennis Munding (28-06-2006) 
 
	
          | |  | Kommentar Fra : Dennis Munding
 | 
 Dato :  28-06-06 17:03
 | 
 |  | 
 
            Hej Mark!
 "Mark Thomas Gazel" <markgazel@hotmail.com> skrev i en meddelelse 
 news:355e9$44a29629$3e3d8e23$27544@news.arrownet.dk...
 > Hej
 >
 > Findes der en god open source mailform med mulighed for at sende til 
 > forskellige modtagere?
 >
 > Dem jeg har kunnet finde var bare med én modtager.
 >
 > Det vil sige fx en dropdown, hvor man vælger:
 >
 > chef
 > regnskab
 > reklame
 > klager
 >
 > Og videre i den dur.
 >
 > Mailadresserne skal selvfølgelig være så sikrede som overhovedet muligt, 
 > men plejer de jo at være med en php-form.
 >
 > På forhånd tak.
 Nu er jeg ikke en ørn til PHP, men det burde kunne laves ud fra navnene i 
 dit select-tag:
 <select name="modtager">
 <option value="chef" name/id="chef">Chef</option> // (kan ikke huske, om 
 name eller id er tilladt i et option-tag....?)
 <option...>Regnskab</option>
 o.s.v.
 </select>
 Og i filen der modtager outputtet:
 if ($_POST['modtager'] == 'chef') {
 $modtager = "mail-adresse@til-chefen.dk";
 } elseif {
 ($_POST['modtager'] == 'regnskab') {
 $modtager = mail-adresse@til-regnskab.dk;
 } else {
 $modtager = mail-adresse@til-sidste-valgmulighed.dk;
 }
 Noget i den stil - ovenstående er ikke testet, og jeg er ikke 100% sikker 
 på, at det er korrekt opstillet...
 Med venlig hilsen
 -- 
 Dennis Munding
 Web-master
http://www.skovaa-munding.dk/, http://www.mundings-memorial.dk/
http://www.cantica.dk/, http://www.pe-vagtservice.dk/,
http://www.eds-denmark.dk/ |  |  | 
  Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 07:32
 | 
 |  | 
 
            Dennis Munding skrev:
 > <select name="modtager">
 > <option value="chef" name/id="chef">Chef</option> // (kan ikke huske, om 
 > name eller id er tilladt i et option-tag....?)
 ID er okay, name er ikke. name attributtet må kun ligge i <select> delen.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
  ThomasB (28-06-2006) 
 
	
          | |  | Kommentar Fra : ThomasB
 | 
 Dato :  28-06-06 22:28
 | 
 |  | "Mark Thomas Gazel" <markgazel@hotmail.com> skrev i en meddelelse
 news:355e9$44a29629$3e3d8e23$27544@news.arrownet.dk...
 
 > Mailadresserne skal selvfølgelig være så sikrede som overhovedet muligt,
 > men plejer de jo at være med en php-form.
 
 Hej Mark.
 
 Her kommer et jeg lige har bikset sammen. Det er ikke testet.
 
 Mvh Thomas
 
 <?php
 if ($todo=="go"){
 
 if ($type == "chefen"){$til = "chefen@firma.dk";}
 if ($type == "regnskab"){$til = "regnskab@firma.dk";}
 
 $headers  = "MIME-Version: 1.0\n";
 $headers .= "Content-type: text/html; charset=iso-8859-1\n";
 $headers .= "From: HJEMMESIDEN <hjemmesiden@hjemmesiden.dk>\n";
 
 mail($til, $emne, $besked, $headers);
 
 print "Din meddelelse er sendt til $type";
 
 }else{
 ?>
 <form action="?todo=go" method="post">
 <input type="text" name="emne"><br>
 <textarea name="besked"></textarea><br>
 <select name="type">
 <option value="chefen">Chefen</option>
 <option value="regnskab">Regnskab/option>
 </select><br>
 <input type="submit" value="Send besked">
 </form>
 <?php}?>
 
 
 
 
 
 |  |  | 
  Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 07:30
 | 
 |  | 
 
            ThomasB skrev:
   > Hej Mark.
 > 
 > Her kommer et jeg lige har bikset sammen. Det er ikke testet.
 > 
 > Mvh Thomas
 > 
 [snip slamkode]
 Så, Thomas, nu har vi allerede konstateret en gang tidligere at din kode 
 er håbløst forældet. Den er sikkerhedsmæssigt ikke forsvarlig og 
 syntaksen ligner noget fra PHP3's tid.
 Du bør sætte dig ind i PHP's prædefinerede variabler og konstanter. 
 Eventuelt kigge lidt mere på register_globals (google)
 Dine idéer er gode, men din kode er forældet.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
   ThomasB (29-06-2006) 
 
	
          | |  | Kommentar Fra : ThomasB
 | 
 Dato :  29-06-06 15:22
 | 
 |  | 
 
            "Dan Storm" <shadyz@_REMOVETHIS_err0r.dk> skrev i en meddelelse 
 news:44a37304$0$90496$edfadb0f@dread11.news.tele.dk...
 >> Her kommer et jeg lige har bikset sammen. Det er ikke testet.
 >>
 >> Mvh Thomas
 >>
 > [snip slamkode]
 > Dine idéer er gode, men din kode er forældet.
 Du er vist et værre vrøvlehoved. Min kode virker for det første, og for det 
 andet er den fuldstændig sikker og uptodate.
 Hvad med http://err0r.dk/?  Hvor bliver dine å'er af? Slamkode? Og hvad med 
 java-fejlen?
 Hvis du endelig skal kritisere min kode, så gør det konstruktivt og forklar 
 præcist hvis du mener er galt.
            
             |  |  | 
    Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 18:08
 | 
 |  | 
 
            ThomasB skrev:
 > Du er vist et værre vrøvlehoved. Min kode virker for det første, og for det 
 > andet er den fuldstændig sikker og uptodate.
 Aha...
 > Hvad med http://err0r.dk/?  Hvor bliver dine å'er af? Slamkode? Og hvad med 
 > java-fejlen?
 Har lige haft serverskifte, så derfor er mine æøå'er forsvundet - har 
 bare ikke lige gidet at rette mine artikler.
 Javascriptfejl? Ikke en jeg har set i FF. Men jeg værdsætter at der er 
 en som gør mig opmærksom på mine fejl.
 > Hvis du endelig skal kritisere min kode, så gør det konstruktivt og forklar 
 > præcist hvis du mener er galt.
 <?php
 if ($todo=="go"){ //kræver at register_globals er sat til on, hvilket 
 allerede er sikkerhedsmæssigt uforsvaligt.
 if ($type == "chefen"){$til = "chefen@firma.dk";} //ustruktureret
 if ($type == "regnskab"){$til = "regnskab@firma.dk";} //ustruktureret
 // se evt. <url: http://www.cprogramming.com/tutorial/style.html> $headers  = "MIME-Version: 1.0\n";
 $headers .= "Content-type: text/html; charset=iso-8859-1\n";
 // hvorfor tillade HTML til mailen?
 $headers .= "From: HJEMMESIDEN <hjemmesiden@hjemmesiden.dk>\n"; //Brug 
 \r\n af kompatibilitetsårsager
 mail($til, $emne, $besked, $headers); //kontrol af afsendelse ville være 
 på sin plads
 print "Din meddelelse er sendt til $type";
 /* Hvorfor udskrive mailadressen, når det var netop det trådstarter 
 ville undgå?
 En simpel bekræftelse ville være bedre
 */
 }else{
 ?>
 <form action="?todo=go" method="post">
 <!-- Brug $_SERVER variabler, for ellers vil PHP kræve at 
 regiister_globals var sat til on - igen, sikkerhed! -->
 <input type="text" name="emne"><br>
 <textarea name="besked"></textarea><br>
 <select name="type">
 <option value="chefen">Chefen</option>
 <option value="regnskab">Regnskab/option>
 </select><br>
 <input type="submit" value="Send besked">
 </form>
 <?php}?>
 Det er konstruktiv kritik og er ikke noget fra et 'vrøvlehoved'.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
     ThomasB (29-06-2006) 
 
	
          | |  | Kommentar Fra : ThomasB
 | 
 Dato :  29-06-06 20:35
 | 
 |  | 
 
            "Dan Storm" <shadyz@_REMOVETHIS_err0r.dk> skrev i en meddelelse 
 news:44a40897$0$90522$edfadb0f@dread11.news.tele.dk...
 >> Du er vist et værre vrøvlehoved. Min kode virker for det første, og for 
 >> det andet er den fuldstændig sikker og uptodate.
 > Aha...
 Nemlig.
 >> Hvad med http://err0r.dk/?  Hvor bliver dine å'er af? Slamkode? Og hvad 
 >> med java-fejlen?
 > Har lige haft serverskifte, så derfor er mine æøå'er forsvundet - har bare 
 > ikke lige gidet at rette mine artikler.
 > Javascriptfejl? Ikke en jeg har set i FF. Men jeg værdsætter at der er en 
 > som gør mig opmærksom på mine fejl.
 Prøv IE.
 >> Hvis du endelig skal kritisere min kode, så gør det konstruktivt og 
 >> forklar præcist hvis du mener er galt.
 >
 > <?php
 > if ($todo=="go"){ //kræver at register_globals er sat til on, hvilket 
 > allerede er sikkerhedsmæssigt uforsvaligt.
 Hvorfor har 95% af alle webhoteller så register_globals sat til on?
 > if ($type == "chefen"){$til = "chefen@firma.dk";} //ustruktureret
 > if ($type == "regnskab"){$til = "regnskab@firma.dk";} //ustruktureret
 > // se evt. <url: http://www.cprogramming.com/tutorial/style.html> Skrevet sådan for at give Mark et overblik.
 > $headers  = "MIME-Version: 1.0\n";
 > $headers .= "Content-type: text/html; charset=iso-8859-1\n";
 > // hvorfor tillade HTML til mailen?
 Det kan være meget rart at kunne formatere teksten i mailen, så den ser 
 lækker ud.
 Desuden kan man så også smide en editor på.
 > $headers .= "From: HJEMMESIDEN <hjemmesiden@hjemmesiden.dk>\n"; //Brug 
 > \r\n af kompatibilitetsårsager
 Ja, det har du ret i. Dog har jeg tit oplevet problemer med OE når man 
 smider \r\n ind.
 > mail($til, $emne, $besked, $headers); //kontrol af afsendelse ville være 
 > på sin plads
 Ja, det kunne man gøre.
 > print "Din meddelelse er sendt til $type";
 > /* Hvorfor udskrive mailadressen, når det var netop det trådstarter ville 
 > undgå?
 > En simpel bekræftelse ville være bedre
 > */
 Den skriver heller ikke mailadressen, men derimod afdelingen ($type):
 "Din meddelelse er sendt til chefen."
 > }else{
 > ?>
 > <form action="?todo=go" method="post">
 > <!-- Brug $_SERVER variabler, for ellers vil PHP kræve at 
 > regiister_globals var sat til on - igen, sikkerhed! -->
 95% af alle webhotellerne har som sagt register_globals sat til on og ja 
 sikkerheden bliver så også det ringere - men helt ærligt - vi taler om et 
 simpelt mailscript.
 Du kan jo prøve om du kan "hacke" mit script - nu har du også kilden    > <input type="text" name="emne"><br>
 > <textarea name="besked"></textarea><br>
 > <select name="type">
 > <option value="chefen">Chefen</option>
 > <option value="regnskab">Regnskab/option>
 > </select><br>
 > <input type="submit" value="Send besked">
 > </form>
 > <?php}?>
 >
 > Det er konstruktiv kritik og er ikke noget fra et 'vrøvlehoved'.
 Ja, det var meget bedre og mere konstruktivt end "slamkode" og "forældet".
            
             |  |  | 
      Michael Rasmussen (29-06-2006) 
 
	
          | |  | Kommentar Fra : Michael Rasmussen
 | 
 Dato :  29-06-06 21:40
 | 
 |  |  |  |  | 
      Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 22:11
 | 
 |  | 
 
            ThomasB skrev:
 > Prøv IE.
 En fejl i forbindelse med import af min database. Import har fjernet 
 mine æøå'er og sat slashes på mine apostroffer. Men tak for heads-up. 
 Fejlen er nu rettet.
 > Hvorfor har 95% af alle webhoteller så register_globals sat til on?
 Oplysningen er baseret på hvad?
 > 
 >> if ($type == "chefen"){$til = "chefen@firma.dk";} //ustruktureret
 >> if ($type == "regnskab"){$til = "regnskab@firma.dk";} //ustruktureret
 >> // se evt. <url: http://www.cprogramming.com/tutorial/style.html> > Skrevet sådan for at give Mark et overblik.
 Definer overblik?
 Jeg synes at pæn og strukturet kode giver et godt overblik.
 > Det kan være meget rart at kunne formatere teksten i mailen, så den ser 
 > lækker ud.
 Du mener at HTML injection i emails ikke udgør nogen sikkerhedsrisiko? 
 Eller vil du lave noget validering af input?
 > Ja, det har du ret i. Dog har jeg tit oplevet problemer med OE når man 
 > smider \r\n ind.
 Okay? Har ikke hørt det før, men kan naturligvis ikke afvise at du 
 oplever det.
 > Den skriver heller ikke mailadressen, men derimod afdelingen ($type):
 > "Din meddelelse er sendt til chefen."
 Sorry, så mig blind på koden.
 > 95% af alle webhotellerne har som sagt register_globals sat til on og ja 
 > sikkerheden bliver så også det ringere - men helt ærligt - vi taler om et 
 > simpelt mailscript.
 Igen, jeg tror det er et procenttal der er grebet ud af luften. Det er 
 sjældent man som standard har sat register_globals = On på webhoteller.
 Men der skal altså heller ikke meget til før 'et simpelt' mailscript kan 
 være skadeligt for ejeren, brugeren eller serveren.
 > Du kan jo prøve om du kan "hacke" mit script - nu har du også kilden    mailscript.php?todo=go&til=dinmail@fordiduskalhavespam.dk&besked=html_besked&header=bcc_modtagere_ad_libitum
 Sværere er det ikke.
 > Ja, det var meget bedre og mere konstruktivt end "slamkode" og "forældet".
 Der skal ikke herske tvivl om at jeg stadig synes din kode er forældet.
 Min personlige holdning til at det er noget slamkode hænger sammen med 
 at din kode ikke er sikkerhedsmæssig forsvarlig og strukturen er ikke 
 særlig pæn eller overskuelig. Men hvis du har nemmere ved at overskue 
 det som du har sat det sammen, er det jo ikke slamkode for dig.
 Men beklager hvis du har følt dig stødt.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
       ThomasB (30-06-2006) 
 
	
          | |  | Kommentar Fra : ThomasB
 | 
 Dato :  30-06-06 11:07
 | 
 |  | 
 
            "Dan Storm" <shadyz@_REMOVETHIS_err0r.dk> skrev i en meddelelse 
 news:44a4418b$0$90481$edfadb0f@dread11.news.tele.dk...
 >> Hvorfor har 95% af alle webhoteller så register_globals sat til on?
 > Oplysningen er baseret på hvad?
 At jeg har sider liggende på stort set alle de største webhoteller.
 >>> if ($type == "chefen"){$til = "chefen@firma.dk";} //ustruktureret
 >>> if ($type == "regnskab"){$til = "regnskab@firma.dk";} //ustruktureret
 >>> // se evt. <url: http://www.cprogramming.com/tutorial/style.html> >> Skrevet sådan for at give Mark et overblik.
 > Definer overblik?
 > Jeg synes at pæn og strukturet kode giver et godt overblik.
 Jeg synes oneliners er gode når man skal give ikke-kodekyndige et overblik. 
 Hvis "man" ikke er tilfreds, så findes der masser af gode beautifiers    >> Det kan være meget rart at kunne formatere teksten i mailen, så den ser 
 >> lækker ud.
 > Du mener at HTML injection i emails ikke udgør nogen sikkerhedsrisiko? 
 > Eller vil du lave noget validering af input?
 Jo sikkert, og man kan jo sådan set gøre alt til et problem.
 >> 95% af alle webhotellerne har som sagt register_globals sat til on og ja 
 >> sikkerheden bliver så også det ringere - men helt ærligt - vi taler om et 
 >> simpelt mailscript.
 > Igen, jeg tror det er et procenttal der er grebet ud af luften. Det er 
 > sjældent man som standard har sat register_globals = On på webhoteller.
 > Men der skal altså heller ikke meget til før 'et simpelt' mailscript kan 
 > være skadeligt for ejeren, brugeren eller serveren.
 Det eneste store webhotel jeg lige kan komme i tanke om der har r_g=off er 
 b-one - og det er ikke engang på alle deres servere.
 >> Du kan jo prøve om du kan "hacke" mit script - nu har du også kilden    >
 > mailscript.php?todo=go&til=dinmail@fordiduskalhavespam.dk&besked=html_besked&header=bcc_modtagere_ad_libitum
 >
 > Sværere er det ikke.
 Hehe ja, jeg så det godt    $til = ""; (prøv nu)
 Du får i øvrigt ikke lov til at sende flere headere med, da den første 
 header er = og ikke =.
 >> Ja, det var meget bedre og mere konstruktivt end "slamkode" og 
 >> "forældet".
 > Der skal ikke herske tvivl om at jeg stadig synes din kode er forældet.
 > Min personlige holdning til at det er noget slamkode hænger sammen med at 
 > din kode ikke er sikkerhedsmæssig forsvarlig og strukturen er ikke særlig 
 > pæn eller overskuelig.
 Jeg skrev selv at det var noget jeg lige havde bikset sammen - det er ikke 
 til at misforstå    > Men hvis du har nemmere ved at overskue det som du har sat det sammen, er 
 > det jo ikke slamkode for dig.
 Jeg synes du overdriver når du kalder min kode slamkode.
 > Men beklager hvis du har følt dig stødt.
 Det er ok    |  |  | 
     Peter Brodersen (30-06-2006) 
 
	
          | |  | Kommentar Fra : Peter Brodersen
 | 
 Dato :  30-06-06 01:58
 | 
 |  | 
 
            On Thu, 29 Jun 2006 19:08:00 +0200, Dan Storm
 <shadyz@_REMOVETHIS_err0r.dk> wrote:
 ><?php
 >if ($todo=="go"){ //kræver at register_globals er sat til on, hvilket 
 >allerede er sikkerhedsmæssigt uforsvaligt.
 Hvis man mener, at register_globals sat til er "sikkerhedsmæssigt
 uforsvarligt", så har man ikke styr over sin kode.
 Der er ingen grund til at have den slået til, men den udgør kun en
 sikkerhedsmæssig risiko ved meget, meget uhensigtsmæssig kode, som
 normalt bliver opdaget af notice-rapporteringer.
 Det er dog tilfældet i det her script    >if ($type == "chefen"){$til = "chefen@firma.dk";} //ustruktureret
 >if ($type == "regnskab"){$til = "regnskab@firma.dk";} //ustruktureret
 >// se evt. <url: http://www.cprogramming.com/tutorial/style.html> Det er et spørgsmål om religion. Det er ikke, hvad jeg ville have
 gjort, men der er så meget andet, der kan hidse mig op.
 >$headers  = "MIME-Version: 1.0\n";
 >$headers .= "Content-type: text/html; charset=iso-8859-1\n";
 >// hvorfor tillade HTML til mailen?
 Det afhænger af beskedens indhold og natur. Jeg ville altid foretrække
 at man sendte multipart/alternative, hvis der skal sendes HTML med.
 I det hele taget, hvis der skal sendes mail, så er det at foretrække
 at bruge en dertil indrettet klasse. At bruge mail() direkte giver
 problemer i længden.
 >$headers .= "From: HJEMMESIDEN <hjemmesiden@hjemmesiden.dk>\n"; //Brug 
 >\r\n af kompatibilitetsårsager
 Nej, der skal ikke være newlines her, idet det er den sidste header.
 Det kan give en ekstra newline.  Det har dog mindre betydning, når
 outputtet er HTML.
 >print "Din meddelelse er sendt til $type";
 >/* Hvorfor udskrive mailadressen, når det var netop det trådstarter 
 >ville undgå?
 >En simpel bekræftelse ville være bedre
 >*/
 Mailadressen udskrives ikke.
 Det er dog et problem, at der ikke tjekkes at $type overhovedet er én
 af de to ønskede, men at man ikke afbryder, hvis $type ikke er én af
 de ønskede.
 Her er det muligt at vælge en anden $type, og så selv sætte sin $til.
 Det giver spammuligheder.
 Derudover printes $type også uden videre, hvilket kan give mulighed
 for cross-site-scripting-stunts.
 >}else{
 >?>
 ><form action="?todo=go" method="post">
 ><!-- Brug $_SERVER variabler, for ellers vil PHP kræve at 
 >regiister_globals var sat til on - igen, sikkerhed! -->
 Hvor kommer $_SERVER ind i billedet i den her del af koden?
 >Det er konstruktiv kritik og er ikke noget fra et 'vrøvlehoved'.
 Ditto.
 -- 
 - Peter Brodersen
   Ugens^WMånedens^WSommerens værktøj - Find vej: www.findvej.dk   Nu med link direkte til en adresse, fx: www.findvej.dk/Nybrogade2,1203 |  |  | 
  Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 07:49
 | 
 |  | 
 
            Mark Thomas Gazel skrev:
 [snip]
 Her er lidt du måske kan bruge. Nemt at redigere i, nemt at se idéen i.
 <?php
 if(isset($_POST['sendmail']))
 {
    $mails = array(1 => "storm@err0r.dk", 2 => "regnskab@firma.dk", 3 => 
 "reklame@firma.dk", 4 => "klager@firma.dk");
   
    $body = "";
    $body .= "Der er sendt en mail fra firma.dk\r\n"   ;
    $body .= "Afsender: ".strip_tags($_POST['email'])."\r\n\r\n";
    $body .= "Meddelelsen er som følger:\r\n";
    $body .= strip_tags($_POST['body'])."\r\n\r\n";
   
    $headers = "From: firma.dk <noreply@firma.dk>\r\n";
   
   
       if(@mail($mails[$_POST['mailto']], strip_tags($_POST['subject']), 
 $body, $headers))
       {
          echo 'Din besked er blevet afsendt.';
       }
 }
 else
 {
 echo '
 <form action="'.$_SERVER['PHP_SELF'].'" method="post">
 <div>
 <input type="hidden" name="sendmail" value="TRUE" />
 Modtager:<br />
 <select name="mailto">
 <option value="1">Chefen</option>
 <option value="2">Regnskab</option>
 <option value="3">Reklame</option>
 <option value="4">Klager</option>
 </select><br />
 Din email:<br />
 <input type="text" name="email"><br />
 Emne<br />
 <input type="text" name="subject"><br />
 Besked:<br />
 <textarea name="body"></textarea><br />
 <input type="submit" name="send" value="Send besked">
 </div>
 </form>
 ';
 }
 ?>
   
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
  Mark Thomas Gazel (29-06-2006) 
 
	
          | |  | Kommentar Fra : Mark Thomas Gazel
 | 
 Dato :  29-06-06 08:16
 | 
 |  | 
 
            Hej Dan
 Det ser fornuftigt ud, men hvad gør jeg i praksis?
 Jeg har smidt din kode ind her:
http://mark.gazel.dk/test/ Det ser lidt forkert ud. Skal der bruges database eller skal jeg lave et 
 seperat dokument, der kalder visse dele af koden?
 -- 
 Med venlig hilsen
 Mark
http://mark.gazel.dk/ > <?php
 >
 >
 > if(isset($_POST['sendmail']))
 > {
 > $mails = array(1 => "storm@err0r.dk", 2 => "regnskab@firma.dk", 3 =>
 > "reklame@firma.dk", 4 => "klager@firma.dk");
 >
 > $body = "";
 > $body .= "Der er sendt en mail fra firma.dk\r\n" ;
 > $body .= "Afsender: ".strip_tags($_POST['email'])."\r\n\r\n";
 > $body .= "Meddelelsen er som følger:\r\n";
 > $body .= strip_tags($_POST['body'])."\r\n\r\n";
 >
 > $headers = "From: firma.dk <noreply@firma.dk>\r\n";
 >
 >
 > if(@mail($mails[$_POST['mailto']], strip_tags($_POST['subject']),
 > $body, $headers))
 > {
 > echo 'Din besked er blevet afsendt.';
 > }
 > }
 > else
 > {
 > echo '
 > <form action="'.$_SERVER['PHP_SELF'].'" method="post">
 > <div>
 > <input type="hidden" name="sendmail" value="TRUE" />
 > Modtager:<br />
 > <select name="mailto">
 > <option value="1">Chefen</option>
 > <option value="2">Regnskab</option>
 > <option value="3">Reklame</option>
 > <option value="4">Klager</option>
 > </select><br />
 > Din email:<br />
 > <input type="text" name="email"><br />
 > Emne<br />
 > <input type="text" name="subject"><br />
 > Besked:<br />
 > <textarea name="body"></textarea><br />
 > <input type="submit" name="send" value="Send besked">
 > </div>
 > </form>
 > ';
 >
 > } 
            
             |  |  | 
   Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 08:42
 | 
 |  | 
 
            Mark Thomas Gazel skrev:
 > Hej Dan
 > 
 > Det ser fornuftigt ud, men hvad gør jeg i praksis?
 Først retter du alle de mailadresser der ligger i scriptet (jeg kender 
 jo ikke de eksakte adresser!)
 > Det ser lidt forkert ud. Skal der bruges database eller skal jeg lave et 
 > seperat dokument, der kalder visse dele af koden?
 Du har garanteret gemt filen som index.html eller *.htm eller lignende.
 Filen skal hedde *.php
 F.eks. kontakt.php
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
    Mark Thomas Gazel (29-06-2006) 
 
	
          | |  | Kommentar Fra : Mark Thomas Gazel
 | 
 Dato :  29-06-06 09:05
 | 
 |  | 
 
            >> Det ser lidt forkert ud. Skal der bruges database eller skal jeg
 >> lave et seperat dokument, der kalder visse dele af koden?
 > Du har garanteret gemt filen som index.html eller *.htm eller
 > lignende. Filen skal hedde *.php
 Jeg er med. Nu skal den jo bruges i WordPress, men jeg kan vel hente den ind 
 i en iframe.
 Er mailadresserne sikret med harvestere. Det er lidt diffust for mig 
 præcist, hvornår harvesterne kan hapse adresserne. Jeg ved dog at, hvis de 
 ligger i et almindelig html-dokument, så er de blotlagt.
 -- 
 Med venlig hilsen
 Mark
http://mark.gazel.dk/ |  |  | 
     Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 09:35
 | 
 |  | 
 
            Mark Thomas Gazel skrev:
 > Jeg er med. Nu skal den jo bruges i WordPress, men jeg kan vel hente den ind 
 > i en iframe.
 Jeg ved ikke helt hvordan de fungerer med post, men du kan da prøve.
 > Er mailadresserne sikret med harvestere. Det er lidt diffust for mig 
 > præcist, hvornår harvesterne kan hapse adresserne. Jeg ved dog at, hvis de 
 > ligger i et almindelig html-dokument, så er de blotlagt.
 Lige så snart de kan læses af en tekstbrowser, så kan de høstes. Men 
 idét at adresserne ligger gemt i PHP koden, så kan de ikke læses.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
      Mark Thomas Gazel (29-06-2006) 
 
	
          | |  | Kommentar Fra : Mark Thomas Gazel
 | 
 Dato :  29-06-06 10:23
 | 
 |  | 
 
            >> Er mailadresserne sikret med harvestere. Det er lidt diffust for mig
 >> præcist, hvornår harvesterne kan hapse adresserne. Jeg ved dog at,
 >> hvis de ligger i et almindelig html-dokument, så er de blotlagt.
 > Lige så snart de kan læses af en tekstbrowser, så kan de høstes. Men
 > idét at adresserne ligger gemt i PHP koden, så kan de ikke læses.
 Den er smidt ind nu, og jeg har sendt en mail til mig selv, men jeg tror 
 ikke det virker. Der er ikke kommet noget. Går ud fra det er her jeg putter 
 mailadresser ind:
 $mails = array ...
 Der kommer heller ikke en kvittering ved afsendelse. Den her:
 echo 'Din besked er blevet afsendt.';
 -- 
 Med venlig hilsen
 Mark
http://mark.gazel.dk/ |  |  | 
       Dan Storm (29-06-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  29-06-06 22:12
 | 
 |  | 
 
            Mark Thomas Gazel skrev:
 > Den er smidt ind nu, og jeg har sendt en mail til mig selv, men jeg tror 
 > ikke det virker. Der er ikke kommet noget. Går ud fra det er her jeg putter 
 > mailadresser ind:
 > 
 > $mails = array ...
 > 
 > 
 > Der kommer heller ikke en kvittering ved afsendelse. Den her:
 > 
 > echo 'Din besked er blevet afsendt.';
 > 
 Jeg tror det er fordi du bruger den iframe.
 Se om du ikke kan komme uden om det. Eventuelt hardcode den ind i WordPress.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
        Mark Thomas Gazel (30-06-2006) 
 
	
          | |  | Kommentar Fra : Mark Thomas Gazel
 | 
 Dato :  30-06-06 09:42
 | 
 |  | 
 
            > Jeg tror det er fordi du bruger den iframe.
 > Se om du ikke kan komme uden om det. Eventuelt hardcode den ind i
 > WordPress.
 Uha, nej det gør jeg ikke.
 Jeg har lavet en template, som WordPress kalder, der hedder kontakt.php. I 
 den ligger din kode.
 Du kan sen den i kilden:
http://mark.gazel.dk/test/ -- 
 Med venlig hilsen
 Mark
http://mark.gazel.dk/ |  |  | 
         Dan Storm (01-07-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  01-07-06 09:09
 | 
 |  | 
 
            Mark Thomas Gazel skrev:
   > http://mark.gazel.dk/test/ Prøv at rette
 <form action="'.$_SERVER['PHP_SELF'].'" method="post">
 til
 <form action="kontakt.php" method="post">
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
          Mark Thomas Gazel (02-07-2006) 
 
	
          | |  | Kommentar Fra : Mark Thomas Gazel
 | 
 Dato :  02-07-06 12:28
 | 
 |  | 
 
            >  > http://mark.gazel.dk/test/ > Prøv at rette
 > <form action="'.$_SERVER['PHP_SELF'].'" method="post">
 >
 > til
 >
 > <form action="kontakt.php" method="post">
 Desværre. Får en
 Fejl 404. Siden eksisterer ikke.
 -- 
 Med venlig hilsen
 Mark
http://mark.gazel.dk/ |  |  | 
           Dan Storm (03-07-2006) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  03-07-06 06:56
 | 
 |  | 
 
            Mark Thomas Gazel skrev:
 >>  > http://mark.gazel.dk/test/ >> Prøv at rette
 >> <form action="'.$_SERVER['PHP_SELF'].'" method="post">
 >>
 >> til
 >>
 >> <form action="kontakt.php" method="post">
 > 
 > Desværre. Får en
 > Fejl 404. Siden eksisterer ikke.
 > 
 Jo mere jeg kigger på din kildekode, jo mere forvirret bliver jeg?
 Lige nu ser din kode sådan her ud:
 <form action="/wp-content/themes/relaxation/kontakt.php" method="post">
 Men den skal jo helst fungere sådan at action skal pege mod sig selv, i 
 det pågældende script.
 Så hvis din fil hedder kontakt.php, bør
 <form action="kontakt.php" method="post">
 virke efter hensigten.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
            Mark Thomas Gazel (03-07-2006) 
 
	
          | |  | Kommentar Fra : Mark Thomas Gazel
 | 
 Dato :  03-07-06 12:26
 | 
 |  | 
 
            > Jo mere jeg kigger på din kildekode, jo mere forvirret bliver jeg?
 > Lige nu ser din kode sådan her ud:
 > <form action="/wp-content/themes/relaxation/kontakt.php"
 > method="post">
 Det var mit forsøg på at se om hele stien skulle stå der.
 Det skulle den ikke.
 > Men den skal jo helst fungere sådan at action skal pege mod sig selv,
 > i det pågældende script.
 > Så hvis din fil hedder kontakt.php, bør
 > <form action="kontakt.php" method="post">
 > virke efter hensigten.
 Den virker, men jeg får ingen mails. Ok, så virker den ikke. Men det skal 
 forstås på den måde, at når jeg fylder felterne ud og klikker send, så 
 kommer jeg til index-siden, så noget sker der.
 -- 
 Med venlig hilsen
 Mark
http://mark.gazel.dk/ |  |  | 
  Peter Brodersen (11-07-2006) 
 
	
          | |  | Kommentar Fra : Peter Brodersen
 | 
 Dato :  11-07-06 00:06
 | 
 |  | 
 
            On Thu, 29 Jun 2006 08:48:50 +0200, Dan Storm
 <shadyz@_REMOVETHIS_err0r.dk> wrote:
 ><form action="'.$_SERVER['PHP_SELF'].'" method="post">
 Dette giver så en cross-site-scripting-sårbarhed og bør ikke benyttes
 i noget produktionskode.
 PHP_SELF kan indeholde tainted bruger-data og skal behandles som så.
 Det er dog et ret udbredt hul, idet folk antager, at SERVER-variable
 generelt er sikre.
 -- 
 - Peter Brodersen
   Ugens^WMånedens^WSommerens værktøj - Find vej: www.findvej.dk   Nu med link direkte til en adresse, fx: www.findvej.dk/Nybrogade2,1203 |  |  | 
 |  |