1 2016-01-14 12:59:11 (2016-01-14 12:59:55 отредактировано red.fraction.1998)

Тема: Срочно нужна помощь.

Нужно сделать на сайте блок с заявкой типа "Оставьте свой номер и мы вам перезвоним". Не могу понять, как реализовать это на данной CMS. Пробовал с помощью пост запросов, но это вообще не вариант, т.к. директорию которую создаю в корне и кладу в неё файл не могу открыть. Заявка в итоге должна прихродить на почтовый ящик указанный ранее в ручную.

Поделиться

2

Re: Срочно нужна помощь.

как мне обратится к данному скрипту посредством post -

Телефон: ".$_POST["phone"]."
Адрес
".$_POST["address"]; function get_data($smtp_conn) { $data=""; while($str = fgets($smtp_conn,515))web { $data .= $str; if(substr($str,3,1) == " ") { break; } } return $data; } $smtpserver="smtp.****.ru"; // адрес smtp-сервера +++ $smtpport="587"; // порт smtp-сервера +++ $maillogin="u***3"; // Логин smtp +++ $mailpass="s********ng"; // Пароль smtp +++ $senderdomain="vidnoermc.ru"; // Домен отправителя +++ $sendermail="info@vidnoermc.ru"; // Адрес отправителя +++ $replymail=$_POST["email"]; // Адрес для ответа $recepname="Мастера на все руки!"; // Имя получателя $recepmail="info@vidnoermc.ru"; // Куда отправлять заявки (наш email-адрес) +++ $sendername=$_POST["name"]; // Имя отправителя $replyname=$_POST["name"]; // Имя для ответа $mailsubject="Заявка с сайта"; // Тема письма $header="Date: ".date("D, j M Y G:i:s")." +0700\r\n"; $header.="From: =?utf-8?Q?".str_replace("+","_",str_replace("%","=",urlencode($sendername)))."?= \r\n"; $header.="X-Mailer: The Bat! (v3.99.3) Professional\r\n"; $header.="Reply-To: =?utf-8?Q?".str_replace("+","_",str_replace("%","=",urlencode($replyname)))."?= \r\n"; $header.="X-Priority: 3 (Normal)\r\n"; $header.="Message-ID: <172562218.".date("YmjHis").">\r\n"; $header.="To: =?utf-8?Q?".str_replace("+","_",str_replace("%","=",urlencode($recepname)))."?= \r\n"; //если нужно слать копию, то добавьте: $header.="Cc: =?utf-8?Q?".str_replace("+","_",str_replace("%","=",urlencode($recepname)))."?= \r\n"; $header.="Subject: =?utf-8?Q?".str_replace("+","_",str_replace("%","=",urlencode($mailsubject)))."?=\r\n"; $header.="MIME-Version: 1.0\r\n"; $header.="Content-Type: text/html; charset=utf-8\r\n"; $header.="Content-Transfer-Encoding: 8bit\r\n"; $file=fopen('maillog.txt', 'a'); $smtp_conn = fsockopen($smtpserver, $smtpport,$errno, $errstr, 10); if(!$smtp_conn) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." соединение с сервером не прошло\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} $data = get_data($smtp_conn); fputs($smtp_conn,"EHLO ".$senderdomain."\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 250) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." ошибка приветсвия EHLO\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} fputs($smtp_conn,"AUTH LOGIN\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 334) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." сервер не разрешил начать авторизацию\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} fputs($smtp_conn,base64_encode($maillogin)."\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 334) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." ошибка доступа к такому юзеру\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} fputs($smtp_conn,base64_encode($mailpass)."\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 235) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." не правильный пароль\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} $size_msg=strlen($header."\r\n".$text); fputs($smtp_conn,"MAIL FROM: SIZE=".$size_msg."\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 250) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." сервер отказал в команде MAIL FROM\r\n"; fsmtp сервер write($file, $current); fclose($smtp_conn); exit;} fputs($smtp_conn,"RCPT TO:\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 250 AND $code != 251) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." Сервер не принял команду RCPT TO\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} fputs($smtp_conn,"DATA\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 354) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." сервер не принял DATA\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} fputs($smtp_conn,$header."\r\n".$text."\r\n.\r\n"); $code = substr(get_data($smtp_conn),0,3); if($code != 250) {$current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." ошибка отправки письма\r\n"; fwrite($file, $current); fclose($smtp_conn); exit;} fputs($smtp_conn,"QUIT\r\n"); $current .= $recepmail." / ".$_POST["phone"]." / ".$_POST["name"]." / ".$_POST["email"]." - заявка успешно обработана\r\n"; fwrite($file, $current); fclose($smtp_conn); echo "
".$message; ?>

Поделиться

3

Re: Срочно нужна помощь.

Наверное записать в отдельный пхп файл и путь к нему прописать в action формы?

Спасибо говорим плюсиком в репутацию. Так виднее smile

Поделиться

4

Re: Срочно нужна помощь.

sergeyterr пишет:

Наверное записать в отдельный пхп файл и путь к нему прописать в action формы?

Не вариант, монстра не пропускает, из-за настроек в htaccess error 500

Поделиться

5 (2016-01-17 06:12:55 отредактировано sergeyterr)

Re: Срочно нужна помощь.

1 Создал в корне файл test.php
2 записал в него

3 вызвал по адресу

my.domain/text.php

4 Ошибок нет - показывает инфо по пхп

Дальше:
1 Скопировал файл в папку public
2 вызвал в адресной строке по адресу

my.domain/public/text.php

3 опять все работает

Делаю больше:
1 иду в шаблон страницы
2 вставляю код

3 захожу на страницу и вижу форму
4 отправляю ее и о чудо - опять вижу таблицу свойств пхп

не понимаю почему у вас выдает ошибку?

Если у вас не пускает путь из action формы, попробуйте обратиться к скрипту аяксом.
З.Ы. Если вы файл кладете в какую то другую папку, то возможно туда нужно положить htaccess с разрешением читать в этой папке

Спасибо говорим плюсиком в репутацию. Так виднее smile

Поделиться

6

Re: Срочно нужна помощь.

Решение всех вопросов с формами на сайте: http://dedushka.org/kod/5213.html

Лучше сгореть, чем истлеть...

Сайт kromverk

Поделиться