Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Форма заказа

Сообщения:  [1-5] 

 
 автор: Miracle   (02.03.2006 в 12:23)   письмо автору
 
   для: elenaki   (02.03.2006 в 11:59)
 

у меня есть вот такая штука (не моя честно говоря), только она работать не хочет, посмотрите пожалуйста, может там ошибки?

<?php
if( !empty($_REQUEST['email']) ) {

// проверка на вхождение telros в e_mail
$email = $_REQUEST['email'];
$email_ok = stristr($email,"telros");

if( !eregi("^([-a-z0-9._]+@[-a-z0-9.]+(\.[-a-z0-9]+)+)*$", $_REQUEST['email']) or $email_ok ) {
echo "<h3 style='color:#FF0000; padding: 10px 0px 0px 223px;'>Не корректно введён e-mail адрес!</h3>";
}
else {
if (!empty($_REQUEST["mail"]) && !empty($_REQUEST["message"]))
echo "<h3 style='color:green; padding: 10px 0px 0px 223px;'>Ваше сообщение успешно отправлено!</h3>";
}
}

if (!empty($_REQUEST["mail"]) && (empty($_REQUEST["email"]) or empty($_REQUEST["message"])) )
echo "<h3 style='color:#FF0000; padding: 10px 0px 0px 223px;'>Вы не ввели Ваш Email-адрес или текст Сообщения!</h3>";
?>
<h1 class="headline">Напишите нам</h1>
<div id="content">

<form name="Form" method="post" action="<? echo $_SERVER['PHP_SELF'] ?>">

<div class="main">
<table cellspacing="0" cellpadding="4" border="0" summary="Feedback Design Table">
<tr valign="top">
<td>
<a onclick="if (__dnn_Help_OnClick('dnn_ctr2268_Feedback_plEmail_pnlHelp'));">
<img src="images/help.gif" alt="Укажите Ваш Email-адрес" border="0" /></a>
Ваш Email-адрес:
<br>
<div id="dnn_ctr2268_Feedback_plEmail_pnlHelp" class="Help" style="display:none;">
Укажите Ваш Email-адрес
</div>
<input name="email" type="text" maxlength="100" size="45" style="width:250px;">
</td>
</tr>
<tr valign="top">
<td>
<a onclick="if (__dnn_Help_OnClick('dnn_ctr2268_Feedback_plName_pnlHelp'));">
<img src="images/help.gif" alt="Укажите Ваше имя" border="0" /></a>
Ваше имя:
<br>
<div id="dnn_ctr2268_Feedback_plName_pnlHelp" class="Help" style="display:none;">
Укажите Ваше имя
</div>
<input name="name" type="text" maxlength="100" size="45" style="width:250px;" />
</td>
</tr>
<tr valign="top">
<td>
<a onclick="if (__dnn_Help_OnClick('dnn_ctr2268_Feedback_plSubject_pnlHelp'));">
<img src="images/help.gif" alt="Задайте тему Вашего сообщения" border="0" /></a>
Тема:
<br>
<div id="dnn_ctr2268_Feedback_plSubject_pnlHelp" class="Help" style="display:none;">
Задайте тему Вашего сообщения
</div>
<input name="subject" type="text" maxlength="100" size="45" style="width:250px;" />
</td>
</tr>
<tr valign="top">
<td>
<a onclick="if (__dnn_Help_OnClick('dnn_ctr2268_Feedback_plBody_pnlHelp'));">
<img src="images/help.gif" alt="Напишите текст Вашего сообщения" border="0" /></a>
Сообщение:
<br>
<div id="dnn_ctr2268_Feedback_plBody_pnlHelp" class="Help" style="display:none;">
Напишите текст Вашего сообщения
</div>
<textarea name="message" rows="10" cols="65" style="width:400px;"></textarea>
</td>
</tr>
<tr valign="top">
<td align="middle">

<input type='submit' name='mail' value='Отправить'>
<input type='reset' value='Очистить'>

<?
require_once "inc/config.php";
$db = mysql_connect($host, $dblogin, $dbpwd) or die("Could not connect: " . mysql_error());
mysql_select_db($dbname, $db);

// эл.почта web-мастера
$mail_users = "intel-web@mail.ru"; //, ... ... ... . то что надо";

// Отправка запроса
if (!empty($_REQUEST["mail"]) && !empty($_REQUEST["email"]) && !empty($_REQUEST["message"]))
{
$email = $_REQUEST["email"];

//partiton select
$site = $HTTP_SERVER_VARS['DOCUMENT_ROOT'];
strtok($site,"/");
$site = strtok("/");

switch ( $site )
{
case "www.telros.ru":
$partition = 1;
$partition_name = 'www.telros.ru';
break;

case "labs.telros.ru":
$partition = 2;
$partition_name = 'labs.telros.ru';
break;

case "si.telros.ru":
$partition = 3;
$partition_name = 'si.telros.ru';
break;

case "www.telros-telecom.ru":
$partition = 4;
$partition_name = 'www.telros-telecom.ru';
break;
}

// определяем ip
$ip = $_SERVER['REMOTE_ADDR'];


// проверка на вхождение telros в e_mail
$email_ok = stristr($email,"telros");
if ( !$email_ok )
{
// проверяем правильность ввода email
if(eregi("^([-a-z0-9._]+@[-a-z0-9.]+(\.[-a-z0-9]+)+)*$", $email))
{

$to = $mail_users;


$header="From: $email\r\nContent-Type: text/html; charset=koi8-r";


$message = $_REQUEST["message"];

$name = "-";
$subject = "Письмо с $partition_name";

if (!empty($_REQUEST["name"])) {$name = $_REQUEST["name"];}
if (!empty($_REQUEST["subject"])){$subject = $_REQUEST["subject"];}

$subject_win = $subject; // в базу пишем в кодировке windows-1251
$subject = convert_cyr_string($subject,"w","k");

$body = "$message";

$body = str_replace("\n","<br>",$body); // по почте
$message = str_replace("\n","<br>",$message); // в базу
$body = "С сайта <b>$partition_name</b> получено письмо следующего содержания: <br><br> $body <div align='right'>Отправитель: <b>$name</b> (ip: <a href='http://www.dnsstuff.com/tools/ptr.ch?ip=$ip' target='_blank'>$ip</a>) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>";
$body = convert_cyr_string($body,"w","k");
$time = time() + 3600;

//antibug
$email = str_replace("'","\\'",$email);
$name = str_replace("'","\\'",$name);
$subject_win = str_replace("'","\\'",$subject_win);
$message = str_replace("'","\\'",$message);

// добавляем данные в БД
$add ="INSERT INTO feedback VALUES ('','$partition','$time','$email','$name','$subject_win','$message','$ip')";
//exit;
mysql_query($add);

// отсылаем почту
mail ($to ,$subject, $body, $header);
sleep(1);
}
}
}
// Database disconnect
mysql_close($db);
//phpinfo();
?>

</td>
</tr>
</table>
</div>
</form>

   
 
 автор: elenaki   (02.03.2006 в 11:59)   письмо автору
 
   для: oppo   (02.03.2006 в 11:52)
 

проверки - это другая история. я проверяю JS-том, чтобы не тратить время на запросы
к серверу и обратно. в конце концов, если юзер внесет неправильный адрес, он же сам не
сможет потом активизировать заказ, о чем предупреждается заранее.

   
 
 автор: oppo   (02.03.2006 в 11:52)   письмо автору
 
   для: elenaki   (02.03.2006 в 11:40)
 

elenaki , а можно посмотреть ее - как там с проверками типа get и отправкой формы локально всякими жуликами

   
 
 автор: elenaki   (02.03.2006 в 11:40)   письмо автору
 
   для: Miracle   (02.03.2006 в 11:15)
 

форма заказа во многом зависит от содержимого и способа его выбора. простейшая форма:
имя, е-маil, message. скриптов отправки форм тоже великое множество. у меня есть
чудный универсальный скрипт, который может послать любую форму любой сложности,
сколько бы их ни было на сайте.

   
 
 автор: Miracle   (02.03.2006 в 11:15)   письмо автору
 
 

Добрый день!

Подскажите опжалуйста какую-нибудь простейшую форму заказа и отправки на почтовый ящик

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования