praegune kellaaeg 20.06.2025 23:33:18
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
sakunne
HV veteran

liitunud: 15.12.2004
|
16.06.2009 15:30:00
E-maili saatmise scripti vaja? |
|
|
Oleks siis vaja sellist scripti, mis töötaks ka ja kontrolliks, kontrolliks aadressi ja puha
PHP Centeris on üks üleval, a'see ei tööta ja ise ma nii vinge mees ei ol, et sellise kirjutamisega hakkama saaksin
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
16.06.2009 17:39:08
|
|
|
See on ka kusagilt netist saadud, suht vinge kood. On sisestuskontrollid ja töötab. Ma hästi ei usu, et PHP centri kood ei funka. Äkki sul server ei toeta üldse kirja saatmist?
<?php
if (!isset($_POST['submit']) || $_SERVER['REQUEST_METHOD'] != "POST") {
exit("<p>You did not press the submit button; this page should not be accessed directly.</p>");
} else {
$exploits = "/(content-type|bcc:|cc:|document.cookie|onclick|onload|javascript|alert)/i";
$profanity = "/(beastial|bestial|blowjob|clit|cock|cum|cunilingus|cunillingus|cunnilingus|cunt|ejaculate|fag|felatio|fellatio|piix|fuk|fuks|gangbang|gangbanged|gangbangs|hotsex|jism|jiz|kock|kondum|kum|kunilingus|orgasim|orgasims|orgasm|orgasms|phonesex|phuk|phuq|porn|pussies|pussy|spunk|xxx|nude|adult)/i";
$spamwords = "/(viagra|phentermine|tramadol|adipex|advai|alprazolam|ambien|ambian|amoxicillin|antivert|blackjack|backgammon|texas|holdem|poker|carisoprodol|ciara|ciprofloxacin|debt|dating|porn)/i";
$bots = "/(Indy|Blaiz|Java|libwww-perl|Python|OutfoxBot|User-Agent|PycURL|AlphaServer)/i";
if (preg_match($bots, $_SERVER['HTTP_USER_AGENT'])) {
exit("<p>Known spam bots are not allowed.</p>");
}
foreach ($_POST as $key => $value) {
$value = trim($value);
if (empty($value)) {
exit("<p>Empty fields are not allowed. Please go back and fill in the form properly.</p>");
} elseif (preg_match($exploits, $value)) {
exit("<p>Exploits/malicious scripting attributes aren't allowed.</p>");
} elseif (preg_match($profanity, $value) || preg_match($spamwords, $value)) {
exit("<p>That kind of language is not allowed through our form.</p>");
}
$_POST[$key] = stripslashes(strip_tags($value));
}
if (!ereg("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,6})$",strtolower($_POST['email']))) {
exit("<p>That e-mail address is not valid, please use another.</p>");
}
$recipient = "mina@server.ee";
$subject = "Kontaktivormilt saadetud kiri";
$message = "Teile saabus e-maili vormi kaudu kiri veebilehelt : \n";
$message .= "Nimi: {$_POST['name']} \n";
$message .= "E-mail: {$_POST['email']} \n";
$message .= "Sisu: {$_POST['comments']} \n";
$headers = "From: veebilehelt<$recipient> \n";
$headers .= "Reply-To: <{$_POST['email']}>";
if (mail($recipient,$subject,$message,$headers)) {
echo "<p>Thank you! Your mail was successfully sent. Thank you for your time.</p>";
} else {
echo "<p>Sorry, there was an error and your mail was not sent. Please find an alternative method of contacting.</p>";
}
}
?> |
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
17.06.2009 16:00:52
|
|
|
andrusny kirjutas: |
See on ka kusagilt netist saadud, suht vinge kood. On sisestuskontrollid ja töötab. Ma hästi ei usu, et PHP centri kood ei funka. Äkki sul server ei toeta üldse kirja saatmist? |
Joomla vormilt laaseb küll saata
Sinu kood annab sellise kirja:
You did not press the submit button; this page should not be accessed directly.
PHP centeri kood on siuke:
<?php
$mailiaadress = "mina@server.ee";
$error = "";
if ($saadanupp) {
if (preg_match ("/\r|\n/", $epostiaadress) || preg_match ("/\r|\n/", $nimi)) {
$error = "Vigane e-posti aadress või nimi!";
}
if (!strlen ($kommentaar)) {
$error = "Tekst on vajalik!";
}
if (!strlen ($epostiaadress)) {
$error = "Teie murele vastamisks on e-mail vajalik!";
} else if (!preg_match ("/^.+@.+\$/", $epostiaadress)) {
$error = "E-posti aadress ei ole päris õige!";
}
if ($verify != 'verified') {
if ($verify == 'not_verified') {
$error = 'Palun aktiveerige JavaScript!';
}
}
if (!$error) {
mail($mailiaadress, "Tagasiside vormi kommentaar", "$kommentaar", "From: $nimi <$epostiaadress>");
?>
<br><br><table border="1" bordercolor="<? echo $border_color; ?>" cellspacing="0" cellpadding="2" width="450">
<tr>
<td><center><b>Täname, võtame ühendust kolme (3) päeva jooksul!</b></center></td>
</tr>
</table>
<?php
}
}
if ($error)
{
?>
<br><br><table border="1" bordercolor="<? echo $border_color; ?>" cellspacing="0" cellpadding="2" width="450">
<tr bgcolor="red">
<td><b>Viga!!!</b><br><?php echo $error; ?></td>
</tr>
</table>
<?php
}
if (!$saadanupp)
{
?>
<br><br><table border="1" bordercolor="<? echo $border_color; ?>" cellspacing="0" cellpadding="2" width="450">
<form action="?action=tagasiside" method="post" onsubmit="this.verify.value='verified';">
<input type="hidden" name="verify" value="not_verified">
<tr><td width=115>
Sinu e-mail
</td>
<td width=335>
<input type="text" name="epostiaadress" size="40">
</td>
<tr><td width=115>
Sinu nimi
</td>
<td width=335>
<input type="text" name="nimi" size="40">
</td>
<tr><td width=115>
Tekst
</td>
<td width=335>
<textarea name="kommentaar" rows="5" cols="40"></textarea>
</td>
<tr><td colspan="2">
<center><input type="submit" name="saadanupp" value="Saada kiri"></center>
</td>
</tr>
</form>
</table>
<?php
}
?>
|
Muarust seal midagi kirjeldamata jäänd:
<form action="?action=tagasiside" method="post" onsubmit="this.verify.value='verified';" |
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
17.06.2009 18:00:51
|
|
|
Nupu name peab submit olema.
PHP centri koodis on arvestatud, et global muutujad on sisse lülitatud. Enamustes serverites uuemal ajal see nii ei ole.
Pead kõiki väärtused $_POST abil sisse lugema, siis peaks toimima.
sea $saadanupp väärtust pole ja ta ei hakkagi tööle. Pead enne seda rida lisama
$saadanupp = $_POST[saadanupp]; |
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
sakunne
HV veteran

liitunud: 15.12.2004
|
18.06.2009 16:35:36
|
|
|
andrusny kirjutas: |
Nupu name peab submit olema.
|
Kuhu ma selle lisan, nupu nimi 'saadanupp' ju - tundub, et ma lollim, kui oskasin arvata
|
|
Kommentaarid: 77 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
69 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
18.06.2009 17:10:41
|
|
|
See on minu koodi kohta, nupu nimi peab olema submit, et asi tööle läheks. Muudad lihtsalt ära selle saadanupp asemele kirjutad submit.
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|