Поиск Модуль "Заказать обратный звонок"

Статус
В этой теме нельзя размещать новые ответы.

shadow2k

Постоялец
Регистрация
3 Янв 2008
Сообщения
58
Реакции
3
Господа, может кто-нибудь делал модуль запроса обратного звонка. Я к сожалению не силен в структуре shop-script, и не знаю где копать. Задача сделать в каждом товаре ссылку на форму, где клиент указывает свое имя, обязательно телефон, а на мой е-майл падает сообщение что клиент просит ему перезвонить по номеру, и вызвал он эту форму в товаре ХХХХ.
 
Делал вот так

Описать, "где копать" в двух словах трудно :)

Возьми какой-нить файл из корня (тот, в котором открывается окно для редактирования) - и всё по аналогии. Форма для ввода, капча (если нужна) и отправка письма. Аналогично - раздел админки (если нужно управлять заявками). Это если с PHP знаком...
 
создаем к файл zvonok.php вставляем туда:
PHP:
<?php
 $to_mail = "mail@mail.ru"; // ваш email
 $date = date("Y-m-d");
 $ip = $_SERVER['REMOTE_ADDR'];
 $name =  $_POST[name];
 $phones = $_POST[phones];
 $text = $_POST[text];
if($_POST['phone'] == "yes") { 
   if ($_POST[name] ==""){
	$err01 = "Вы не <b>Представились</b>!";
	$send = "no";
	}
 if ($_POST[phone] =="") {
	$err02 ="Вы не заполнили поле <b>Телефон</b>!";
	$send = "no";
	}
if ($send != "no"){
$sendphone = "<B>Как только мы увидим вашу заявку так сразу же позвоним Вам</b></div>";
$message="
Имя - $name
Телефон - $phones
Коментарий - $text
IP - $ip
Дата - $date
";
mail("$to_mail","Заказ звонка","$message","From: phone@zakaz-zvonok.ru\n"."Content-type: text/plain; charset=windows-1251");
}
else if ($send == "no") {
	$sendphone = "<div  style='padding: 14 0 0 15px; color: #838383;'>";
	$sendphone .= "$err01"; echo "$err02";
	$sendphone .= "<BR>Вернитесь назад и повторите попытку</a>";
	$sendphone .= "</div>";
	}
 }
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Заказ обратного звонка</title>
</head>
<body><center>
<div style="padding: 20px;"> 
<font style="font-size: 20px;">Заказ обратного звонка:</font><Br><Br>	
<? if($sendphone) { echo $sendphone; } else { ?>
<table border=0>
<form method=post onSubmit="if(!document.getElementById('phone').value){ alert(document.getElementById('phone').value + 'Введите номер!'); return false;}">
<input type="hidden" name="enter" value="1">
<tr>
<td align=right><font class="olive">Представтесь</font></td>
<td><input type="text" class="login" name="name" size=20></td>
</tr>
<tr>
<td align=right><font class="olive">Телефон:</font></td>
<td><input name="phones" class="login" type="text" size=20></td>
</tr>	
<tr><td colspan=2 align=center>Коментарий: <BR><textarea name="text" cols="30" rows="5"></textarea></td></tr>	
<tr>
<td colspan=2 align=center>
<input type="submit" value="отправить">
<input type="hidden" name="phone" value="yes">
<input type="hidden" name="ip" value="<? echo $_SERVER['REMOTE_ADDR'];?>">
<input type="hidden" name="data" value="<? echo date("H:i d.m.Y");?>">
</td>
</tr>	
</form>
</table>
<? } ?>
</div>
</html>
на сайте вы в нужном месте вставляем ссылку
PHP:
<a href="javascript:open_window('zvonok.php',400,300);">Заказать обратный звонок</a>
и нужен ещё js скрипт
PHP:
<script language="javascript">
<!--
	function open_window(link,w,h) //opens new window
	{
		var win = "width="+w+",height="+h+",menubar=no,location=no,resizable=yes,scrollbars=yes";
		newWin = window.open(link,'newWin',win);
		newWin.focus();
	}
-->
</script>
посмотреть можите тут

Можно её под товар модифицировать сделать ссылку на заказ звонка вот так:
http://site.ru/zvonok.php?id_tovar={$product_info.productID}

А в содержание письма вставить ссылку
http://site.ru/index.php?productID=$id_tovar

простой способ :)
 
Зачем яваскрипт еще там добавлять просто сделайте ссылку вот такую:
PHP:
<a href="#" onClick="popupWin = window.open('zvonok.php', 'contacts', 'location,width=400,height=300,top=0'); popupWin.focus();">Наши координаты</a>.
И добавьте себе на хост файл zvonok.php
Еще вот в этом месте нет ссылки, а есть только закрывающая для нее:
PHP:
$sendphone .= "<BR>Вернитесь назад и повторите попытку</a>";
лучше исправить на:
PHP:
$sendphone .= "<BR>Вернитесь <a href='zvonok.php'>назад</a> и повторите попытку";
Также лучше добавить кнопку закрыть после отправки сообщения
PHP:
<a href='javascript: self.close ()'>Закрыть окно</a>
Еще сообщение отправлялось без телефона, исправил.
Правил здесь:
PHP:
 if ($_POST[phones] =="") {
    $err02 ="<BR>Вы не ввели <b>Телефон</b>";
    $send = "no";
    }
И здесь:

PHP:
 $sendphone .= "$err01"; echo "$err02";


Если надо забирайте вот готовое прикрепляю во вложения
 

Вложения

  • zvonok.rar
    1,6 KB · Просмотры: 367
  • Заблокирован
  • #5
скажите пожалуйста. Все делаю как написано, но у меня не хочет отображать русский текс на главной странице... Вместо текста непонятные символы... :confused:


там где должно быть - *Заказать обратный звонок* или *Наши координаты*.
 
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> тут стоит эта кодировка

глянь в какой кодировке у тебя, или в КАКОЙ кодировке ты именно сохранял сам файл, - в этом и может быть твоя ошибка (тогда и вылазят кракозябры )))
 
Была тоже не русское отображение... исправил удаленим строки в файле .htaches по умолчанию была кодировка в UTF8
 
Что-то я туплю...
У меня все гуд, и с кодировкой и со всем, но на имейл не приходит письмо. Подскажите, пожалуйста, что делать ?
 
Что-то я туплю...
У меня все гуд, и с кодировкой и со всем, но на имейл не приходит письмо. Подскажите, пожалуйста, что делать ?
А тут прописан ваш е-майл?
PHP:
$to_mail = "mail@mail.ru"; // ваш email

На сайте работает обратная связь?

 
если смтп сервер у тебя требует авторизацию, то естественно ЭТОТ пример работать у тебя не будет... нужно немного его видоизменить под авторизацию
вот тут пример именно такого "заказа обратного звонка", делал для своего смтп сервера (думаю внутри файлов разберешься что и где подставить, там все в комментах, ясно и понятно)

Посмотреть вложение smtp_avtoriz.zip
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху