postavkin

Рейтинг
601
Регистрация
06.01.2009

Форма в документе сериализуется скриптом, и передается в файл, код которого ниже.

Во второй строке специально поставил echo - проверил, данные передаются в файл.

Абсолютно идентичный код на другом сайте работает исправно - письмо отправляется.

На сайте №2, при нажатии "отправить" - сообщение что письмо отправлено, но оно не приходит.


$vbz = $_POST['vbz'];
echo $vbz;
parse_str($vbz, $forma555);
$_POST['name'] = $forma555['name'];
$_POST['telefon'] = $forma555['telefon'];
$_POST['gorod'] = $forma555['gorod'];
$_POST['email'] = $forma555['email'];
$_POST['message'] = $forma555['message'];
$otpravili=0;

error_reporting(E_ALL);

function checkmail($str)
{
//$badchars = "[ ]+| |\+|=|[|]|{|}|`|\(|\)|,|;|:|!|<|>|%|\*|/|'|\"|~|\?|#|\\$|\\&|\\^|www[.]";
$badchars = "[ ]+| |\+|=|[|]|{|}|`|\(|\)|,|;|:|!|<|>|%|\*|\/|'|\"|~|\?|#|\\$|\\&|\\^|www[.]";
//return (eregi($badchars,$str));
return (preg_match('/'.$badchars.'/i',$str));

}

function headerconv ($str)
{
$str = trim($str);
$str = stripslashes($str);

return $str;
}

function htmlconv ($str)
{

//if (get_magic_quotes_gpc):

$str = stripslashes($str);

//endif;

$str = str_replace("\"", "&quot;", $str);
$str = str_replace("<","&lt;",$str);
$str = str_replace(">","&gt;",$str);
$str = str_replace("\r\n", "\n", $str);
$str = str_replace("\r", "\n", $str);
$str = str_replace("\n", "<br>", $str);
$str = str_replace("\$", "***36;", $str);
$str = str_replace("|", "/", $str);
//$str = eregi_replace("(<br>*){2,}","<br><br>",$str);
$str = preg_replace("/(<br>*){2,}/i","<br><br>",$str);
//$str = eregi_replace("[ ]{2,}", " ", $str);
$str = preg_replace("/[ ]{2,}/", " ", $str);
$str = trim($str);

return $str;
}

include ($_SERVER['DOCUMENT_ROOT']."/zayavka/config.inc");

if ($config['inc_headers'] == "on"):

include ($config['header']);

endif;


if (isset($_GET['action'])){
$action=$_GET['action'];
}else{
$action='';
}


//if ($action != "send"):

if ($vbz == ""):
include ($_SERVER['DOCUMENT_ROOT']."/zayavka/form.php");

else:

//include ($_SERVER['DOCUMENT_ROOT']."/zayavka/form.php");
$form['name'] = $_POST['name'];
$form['telefon'] = $_POST['telefon'];
$form['gorod'] = $_POST['gorod'];
$form['email'] = $_POST['email'];
//$form['subject'] = $_POST['subject'];
$form['subject'] = 'с сайта plitka-concorde.ru';
$form['message'] = $_POST['message'];


if (isset($_POST['sendcopy'])){
$form['sendcopy']=$_POST['sendcopy'];
}else{
$form['sendcopy']='';
}

// телефон и город не проверяем на заполнение
if ($form['name'] == "" || $form['email'] == "" || $form['subject'] == "" || $form['message'] == ""):

$errorheader = "<p class=\"T\"><b>СООБЩЕНИЕ НЕ ОТПРАВЛЕНО!</b></p>";
$errormessage = "<p class=\"T\">Небыли заполнены следующие обязательные поля:</p>";
$errormessage .= "<ol>";

if ($form['name'] == ""): $errormessage .= "<li><p class=\"T\">Ваши Ф.И.О. или юр.название:</p></li>"; endif;
if ($form['email'] == ""): $errormessage .= "<li><p class=\"T\">Ваш E-Mail</p></li>"; endif;
if ($form['subject'] == ""): $errormessage .= "<li><p class=\"T\">Тема сообщения</p></li>"; endif;
if ($form['message'] == ""): $errormessage .= "<li><p class=\"T\">Текст сообщения</p></li>"; endif;

$errormessage .= "</ol>";
$errormessage .= "<p class=\"T\">Пожалуйста, попробуйте снова.</p>";

include ($_SERVER['DOCUMENT_ROOT']."/zayavka/error.inc");

else:

$header['subject'] = headerconv($form['subject']);
$header['name'] = headerconv($form['name']);

$form['name'] = htmlconv($form['name']);
$form['email'] = htmlconv($form['email']);
$form['subject'] = htmlconv($form['subject']);
$form['message'] = htmlconv($form['message']);

//if (!(eregi("([a-z0-9_\-\.])+@([a-z0-9_\-\.])+\.([a-z0-9_\-\.])+",$form['email'])) || checkmail($form['email'])):
if (!(preg_match("/([a-z0-9_\-\.])+@([a-z0-9_\-\.])+\.([a-z0-9_\-\.])+/i",$form['email'])) || checkmail($form['email'])):

$errorheader = "<p class=\"T\"><b>СООБЩЕНИЕ НЕ ОТПРАВЛЕНО!</b></p>";
$errormessage = "<p class=\"T\">Введенный вами адрес E-Mail (".$form['email'].") содержит
недопустимые символы или имеет неправильный формат.</p>";
$errormessage .= "<p class=\"T\">Пожалуйста, проверьте правильно ли пишете и попробуйте снова.</p>";

include ($_SERVER['DOCUMENT_ROOT']."/zayavka/error.inc");

else:

$contents = file($_SERVER['DOCUMENT_ROOT']."/zayavka/".$config['recip_file']);
$numlines = sizeof($contents);

for ($i=0;$i<$numlines;$i++) {
$contents[$i] = explode("|",$contents[$i]);
}


if ($form['sendcopy'] == "on"):

$form['send_to'] = $form['send_to'] . ", ";
$form['send_to'] .= $header['name']."<".$form['email'].">";

endif;

$sendmessage = "<html>
<head>
<title>".$form['subject']."</title>
</head>
<table border=\"0\" cellpadding=\"2\" cellspacing=\"0\" width=\"100%\">
<tr>
<td><font face=\"Verdana\" size=\"2\">".$form['message']."<br> указанное в форме имя:".$form['name']."<br> указанный в форме телефон: ".$form['telefon']."<br> указанный в форме город:".$form['gorod'];

if ($config['features'] == "on"):

$sendmessage .= "<br><br>----------------------
<br>Обозреватель: ".$_SERVER['HTTP_USER_AGENT']."
<br>Адрес IP: ".$_SERVER['REMOTE_ADDR'];

endif;

$sendmessage .= "</font></td>
</tr>
</table>
</body>
</html>";

$headers = "MIME-Version: 1.0\n";
$headers .= "From: ".$header['name']."<".$form['email'].">\n";
$headers .= "Content-Type: text/html; charset=".$config['charset']."\n";
$headers .= "X-Mailer: PHP/" . phpversion();

{
//set_time_limit(30);

if (mail('plitka-concorde@mail.ru', $header['subject'], $sendmessage, $headers)):

$okheader = "<p class=\"T\"><b>СООБЩЕНИЕ ОТПРАВЛЕНО!</b></p>";
$okmessage = "<p class=\"T\">Спасибо, ".$form['name'].", ваше сообщение успешно отправлено.
Мы постараемся ответить вам максимально оперативно.";

if ($form['sendcopy'] == "on"):

$okmessage .= "<p class=\"T\">На ваш E-Mail (".$form['email'].") послана копия письма. Через
несколько минут вы можете проверить свой почтовый ящик, чтобы убедиться, что отправка прошла успешно.</p>";

endif;

include ($_SERVER['DOCUMENT_ROOT']."/zayavka/ok.inc");

else:

$errorheader = "<p class=\"T\"><b>СООБЩЕНИЕ НЕ ОТПРАВЛЕНО!</b></p>";
$errormessage = "<p class=\"T\">Произошла непредвиденная ошибка при попытке
отправить сообщение.</p>";
$errormessage .= "<p class=\"T\">Пожалуйста, попробуйте снова.
Если ошибка будет повторяться, обратитесь к <b><a href=\"mailto:".$config['admin_email']."\">Вебмастеру</a></b>.</p>";

include ($_SERVER['DOCUMENT_ROOT']."/zayavka/error.inc");

endif;
}
endif;

endif;

endif;

if ($config['inc_headers'] == "on"):

include ($config['footer']);

endif;

if ($vbz != "" AND $otpravili==0):
include ($_SERVER['DOCUMENT_ROOT']."/zayavka/form.php");
endif;



Windakolit:
Чтобы проверить на переспам, можно смотреть адвего семантический анализ текста http://advego.ru/text/seo/ . Там процентное соотношение, больше 4% не рекомендуют

Запрос "автомобиль ford focus" - 4% должно быть суммарное в странице или каждого слова?

MyOST, в разных браузерах выдача разная. Для какого браузера результаты в Key Collector?

Maxim-KL:
postavkin, Ап сегодня вечером закончить, завтра днем можете смело проверять.

Как считаете контент надо весь допереписывать? Кстати мы старый контент не убирали, просто к нему дописали по 700-800 сиволов.

Maxim-KL:
Да конечно, идет Ап и все позиции штормит.

спасибо большое, честно говоря я и не знал. А через сколько после апа лучше проверять?

Maxim-KL:
Такое выпадение иногда наблюдается из за того что на страничках нет интересного уникального контента для Яшки.
Что у вас за контент на этих страничках?

Контент со старого сайта, трехлетнего, который переклеивали на него. Старый уже закрыт. Сайт коммерческий по продаже ламината.

Контент страниц разделов проверяли, оказалось, что когда то его контент основных разделов копирнули конкуренты. В итоге, после переезда на новый домен, первоисточник для ПС не мы. Неделю назад переписали контент у 50% страниц разделов.

Не переписывали раньше, так как спецы сказали, что полностью переклеится и через месяцев 6-8 мы все равно будем первоисточником.

---------- Добавлено 28.06.2014 в 15:18 ----------

kirf:

Апдейт.

Т.е. позиции сегодня лучше не снимать, будут "плавать". Завтра снять и сделать выводы?

MyOST, подскажите, пожалуйста, в чем причина.

Запустил проверку позиций, удивили результаты по нескольким запросам, неприлично упал, на 5-10 позиций.

Проверил руками в Firefox позиции выше, очистил куки в Firefox без изменений. Проверил в Google Chrome - совпадают с Key Collector. Перезагрузил комп, запустил снова проверку Key Collector - позиции другие, нежели снял в первый раз.

В чем может быть причина. Позвонил другу :) проверил он один запрос руками - у него вообще какой то бред в выдаче. Не знаете, что то у Яндекса стряслось или я что то делаю не так? Спасибо

У меня просели многие запросы коммерческие по НЧ.

Только я это вижу? Запрос со словом "купить", в выдаче сайты из МСк - не моего региона.

Jaf4:
а 2 аналогичных страницы есть?

Нет, но идею понял. Жаль, что ждать ответа придется.

noiws:
А вы никогда никого не слушайте, а пробуйте и тогда наверняка будете знать :)

Нет 2-х аналогичных сайтов, чтобы проверить наверняка, поэтому и спросил дружеского совета:)

Всего: 5508