[ nikic81 @ 12.04.2011. 15:16 ] @
Pozdrav svima,

Interesuje me kako da stavim da mi kontakt forma salje podatke na dvije email adrese, ali ne standardno da adrese razdvojim zarezom, pa da mi stigne email sa kontakt forme gdje se vidi da je poslat na dvije adrese, nego da druga adresa bude nevidljiva, nesto kao opcija Bcc (skrivene kopije) u Gmail-u... samo sto taj email ja definisem u php fajlu, ne dajem opciju korisniku kao na gmail gdje salje skrivenu kopiju? Nadam se da ste me razumjeli :-)

Pozz...
[ dakipro @ 12.04.2011. 15:23 ] @
Pa upravo ti treba BCC header.
http://php.net/manual/en/function.mail.php
Citat:

additional_headers (optional)

String to be inserted at the end of the email header.

This is typically used to add extra headers (From, Cc, and Bcc). Multiple extra headers should be separated with a CRLF (\r\n).
[ Mr. Bond @ 12.04.2011. 15:36 ] @
A da jednostavno posaljes dva mail-a? Daj kod kako sad saljes taj jedan.
[ nikic81 @ 12.04.2011. 15:41 ] @
Ovako saljem na jednu, ovu sam formu negdje pokupio na netu... radi, ali mi treba da razdvojim mail adrese... ali sa skrivenom kopiom...
ne ovako $EmailTo = "[email protected], [email protected]";

pokusavam da provalim kako da izmjenim ovako kako mi je @dakipro rekao, ali se ne snalazim bas najbolje... nisam sa php-om bas dobar :-)

Code:

<?php
$EmailFrom = "MySite";
$EmailTo = "[email protected]";
$Subject = "Contact Form from My Site";
$Ime = Trim(stripslashes($_POST['Ime'])); 
$Email = Trim(stripslashes($_POST['Email'])); 
$Poruka = Trim(stripslashes($_POST['Poruka'])); 

// validation
$validationOK=true;
if (Trim($Email)=="") $validationOK=false;
if (Trim($Poruka)=="") $validationOK=false;
if (!$validationOK) {
  print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
  exit;
}

// prepare email body text
$Body = "";
$Body .= "Ime: ";
$Body .= $Ime;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Poruka: ";
$Body .= $Poruka;
$Body .= "\n";

// send email 
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");

// redirect to success page 
if ($success){
  print "<meta http-equiv=\"refresh\" content=\"0;URL=ok.html\">";
}
else{
  print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
}
?>
[ Predrag Supurovic @ 12.04.2011. 18:37 ] @
$EmailTo = "[email protected]\nBcc: [email protected]";
[ Aleksandar Ružičić @ 12.04.2011. 19:08 ] @

To ne bi trebalo da radi (nisam testirao), iz dva razloga:

$to prima vrednost u RFC 2822 formatu, kao sto je navedeno u dokumentaciji:
Citat:

PHP: mail - Manual

The formatting of this string must comply with » RFC 2822. Some examples are:

[email protected]
[email protected], [email protected]
User <[email protected]>
User <[email protected]>, Another User <[email protected]>


• headeri se odvajaju sa \n\r, ne za \n

Ispravno bi bilo:
Code (php):

$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>\n\rBcc: [email protected]");
 
[ Predrag Supurovic @ 12.04.2011. 20:50 ] @
Koliko znam, php ne radi nikakvu proveru. To je i najjednostavniji nacin da se zloupotrebe sajtovi za spamovanje - prosto se u imejl obrascu upise malo prosireni sadrzaj polja.

[ Predrag Supurovic @ 12.04.2011. 21:01 ] @
Koliko znam, php ne radi nikakvu proveru. To je i najjednostavniji nacin da se zloupotrebe sajtovi za spamovanje - prosto se u imejl obrascu upise malo prosireni sadrzaj polja.
[ vodich @ 21.04.2011. 13:10 ] @
Pa moze da doda proveru da je form poslat sa odredjenog domena to bi trebalo da smanji spam i da doda captcha recimo.
Ako neko ima jos neku ideju bilo bi lepo da napise je me bas interesuju sve mogucnosti za smanjenje spama.
[ tripatwhat @ 28.04.2011. 15:08 ] @
U sustini je najbolji mehanizam da se doda captcha koju bi korisnik popunio kada salje poruku. Captcha se pokazao kao dosta dobar mehanizam za zastitu. Imas ovde http://www.captcha.net/, vise informacija pa i pomoc oko implementacije.