php email skripta

disco

Fizikalc
21. jul 2007
1.102
0
36
A mi zna kdo napisat cimbolj preprosto skripto, ki iz vnosnega polja prebere mail naslov, ki je bil vpisan in poslje eno prednastavljeno sporocilo na ta naslov. Poleg tega pa se poslje se slepa kopija (ali enak mail) se na en drug mail naslov, ki je prednastavljen, torej je vedno enak.

Hvala
 

disco

Fizikalc
21. jul 2007
1.102
0
36
Mogoce ne zastopim skripte, ampak tole samo poslje vsebino forme na mail. Jaz pa rabim, da nekdo vpise svoj mail, kamor dobit (avtomaticno) neko prednastavljeno sporocilo. To isto sporocilo se poslje zraven se na en drug email, ki je tudi prednastavljen.
 

Mikrohard

iPhone Profi
20. jul 2007
5.876
756
113
www.jernej.org
Imaš prav.... za tvoje namene pač v php skripti definiraš tisto prednastavljeno sporočilo in drugi mail naslov.

V html formi pustiš samo še prostor za vnos emaila:

<html>
<head><title>Mail sender</title></head>
<body>
<form action="mail.php" method="POST">
<b>Email</b><br>
<input type="text" name="email" size=40>
<p><input type="submit" value=" Send ">
</form>
</body>
</html>

V mail.php skripti pa vsebino emaila, subject in drugi email naslov statično definiraš... le še prvi email naslov dobiš preko PHP POST metode.

<html>
<head><title>PHP Mail Sender</title></head>
<body>
<?php

/* All form fields are automatically passed to the PHP script through the array $HTTP_POST_VARS. */
$email = $HTTP_POST_VARS['email'];
$email2 = "tvojemail@naslov.com";
$subject = "Prednastavljen subject";
$message = "Prednastavljenno sporočilo";

/* PHP form validation: the script checks that the Email field contains a valid email address and the Subject field isn't empty. preg_match performs a regular expression match. It's a very powerful PHP function to validate form fields and other strings - see PHP manual for details. */
if (!preg_match("/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/", $email)) {
echo "<h4>Invalid email address</h4>";
echo "<a href='javascript:history.back(1);'>Back</a>";
}

/* Sends the mail and outputs the "Thank you" string if the mail is successfully sent, or the error string otherwise. */
elseif (mail($email,$subject,$message); mail($email1,$subject,$message);) {
echo "<h4>Thank you for sending email</h4>";
} else {
echo "<h4>Can't send email to $email</h4>";
}
?>
</body>
</html>

Odstranil sem še preverjanje subject polja (ker je prednastavljen) in za mail($email,$subject,$message) ukazom dodal še en mail($email1,$subject,$message) ukaz. ki isto sporočilo pošlje še na drug (prednastavljen) naslov...
 

disco

Fizikalc
21. jul 2007
1.102
0
36
Aha, mi je jasno. Samo ukaz, da poslje se na $email2 ne deluje. Pravi
Parse error: syntax error, unexpected ';' in mail.php on line 19
 

Mikrohard

iPhone Profi
20. jul 2007
5.876
756
113
www.jernej.org
Aja... jao... nisem dobro pogledal in sem v pogoj zapisal zraven drugi mail ukaz
smile-1.gif


/* Sends the mail and outputs the "Thank you" string if the mail is successfully sent, or the error string otherwise. */
elseif (mail($email,$subject,$message)) {
mail($email2,$subject,$message);
echo "<h4>Thank you for sending email</h4>";
}

Tako bo pa prav
wink-1.gif
 

disco

Fizikalc
21. jul 2007
1.102
0
36
Aha..sem tudi ze sam ugotovil. Sem mal sprobaval sintakse in je enkrat ratalo.
smile-1.gif
Zadeva krasno deluje. Dodal sem se headerje in vse skupaj spravil na eno stran, pa se par zadev in je tocno to kar sem rabil. Preprosto in ucinkovito.

Hvala