Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 01.05.2009, 01:12
dmitry_kiv вне форума Посмотреть профиль Отправить личное сообщение для dmitry_kiv Найти все сообщения от dmitry_kiv
  № 1  
Ответить с цитированием
dmitry_kiv
[+6 04.04.09]

Регистрация: Apr 2009
Сообщений: 32
По умолчанию Не работает отправка заявки с сайта...

Остался от программиста код заявки, переделал его под себя. Но не работает. Подскажите в чем проблема.

PHP код:
<?
if (isset($_REQUEST[zayavka])){
    
$z="";
    
$z.="1. ФИО:\t\t".$_REQUEST["zakazchik"]."\r\n";
    
$z.="2. Телефон: ".$_REQUEST["tel_zakazchika"]."\r\n";
    
$z.="3. E-mail: ".$_REQUEST["mail_zakazchika"]."\r\n";
    
$z.="4. Номера проектов: ".$_REQUEST["projects"]."\r\n";
    
$z.="5. Доп. информация: ".$_REQUEST["dop_info"]."\r\n";
    
$z.=date("Y/m/d  H:i:s",time());
    
    
mail("dima_kiv@inbox.ru","Заявка",$z,"Content-type: text/plain; charset=windows-1251");
    
header("Location: ".$_SERVER['SCRIPT_NAME']."?otpr=1");
}

?>
Код:
	<form method="POST" onsubmit="return checksubmit();" onreset="setreset();">
	<input onkeyup="checkp(3,value);" type="text" size="50" name="zakazchik">
          <input onkeyup="checkp(4,value);" type="text" size="50" name="tel_zakazchika"></td>
	<input onkeyup="checkp(5,value);" type="text" size="50" name="mail_zakazchika">
           <input onkeyup="checkp(6,value);" type="text" size="50" name="projects">
           <TEXTAREA type="text" name="dop_info" rows=5 cols=223></TEXTAREA>
           <input class="button" type="reset">
	<input class="button" type="submit" name="zayavka" value="Отправить">
	
</form>  
	
<script type="text/javascript" charset="windows-1251">
PHP код:
    <?if (isset($_REQUEST['otpr'])){?>
        alert("Ваша заявка отправлена.");
    <? ?>
Код:
var p=[];
for (var i=1;i<4;i++) p[i]=0;

function checkp(n,t){
	if ((n!=1)&&(n!=19)) {
			if (t!=""){
			p[n]=1;
			document.getElementById("p"+n).innerHTML='<span style="color:#ffc600;">+</span>';
		}else{
			p[n]=0;
			document.getElementById("p"+n).innerHTML='<span style="color:#ffc600;">-</span>';
		}
	}
}

function checksubmit(){
	var t=1;
	for (var i=1;i<22;i++)	t=t*p[i];
	if (t==0){
		alert("Ошибка! Проверьте правильность заполнения формы.");
		return false;
	}
	if (t==1){
		return true;
	}
}
function setreset(){
	for (var i=1;i<22;i++){
		document.getElementById("p"+i).innerHTML='<span style="color:#ffc600;">-</span>';
		document.getElementById("tr20").setAttribute("style","visibility: hidden;");
	}
	
}
</script>

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

Старый 01.05.2009, 02:00
duhowka вне форума Посмотреть профиль Отправить личное сообщение для duhowka Найти все сообщения от duhowka
  № 2  
Ответить с цитированием
duhowka

Регистрация: Mar 2009
Сообщений: 317
попробуйте добавить вот сюда
Код:
<form action=имя скрипта method="POST" onsubmit="return checksubmit();" onreset="setreset();">
как я понял, скорее всего, имя скрипта и есть имя этого же файла.
а еще лучше выложите файлик полностью, а не по частям.
код который вы выложили в последней части включает в себя функции: "подсветки" поля при вводе данных, проверку на наличие данных в форме и функцию сброса или обнуления полей

Старый 01.05.2009, 02:05
dmitry_kiv вне форума Посмотреть профиль Отправить личное сообщение для dmitry_kiv Найти все сообщения от dmitry_kiv
  № 3  
Ответить с цитированием
dmitry_kiv
[+6 04.04.09]

Регистрация: Apr 2009
Сообщений: 32
насколько я понял вы имеете ввиду имя скрипта "zayavka"? если да то все равно не работает. вот весь код целиком:
Код:
<?php
require("header.php");
?>	
<?
if (isset($_REQUEST[zayavka])){
	$z="";
	$z.="1. ФИО:\t\t".$_REQUEST["zakazchik"]."\r\n";
	$z.="2. Телефон: ".$_REQUEST["tel_zakazchika"]."\r\n";
	$z.="3. E-mail: ".$_REQUEST["mail_zakazchika"]."\r\n";
	$z.="4. Номера проектов: ".$_REQUEST["projects"]."\r\n";
	$z.="5. Доп. информация: ".$_REQUEST["dop_info"]."\r\n";
	$z.=date("Y/m/d  H:i:s",time());
	
	mail("dima_kiv@inbox.ru","Заявка",$z,"Content-type: text/plain; charset=windows-1251");
	header("Location: ".$_SERVER['SCRIPT_NAME']."?otpr=1");
}

?>	
		<form action="zayavka"  method="POST" onsubmit="return checksubmit();" onreset="setreset();">
	<table cellpadding=0 cellspacing=0 border=0>
		<tr height=30>
			<td width=320>ФИО&nbsp*</td>
			<td width=15 id="p3" align=center><span style="color:#ffc600;">-</span></td>		
			<td><input onkeyup="checkp(3,value);" type="text" size="50" name="zakazchik"></td>
		</tr>
		<tr height=30>
			<td>Телефон&nbsp*</td>
			<td id="p4" align=center><span style="color:#ffc600;">-</span></td>
			<td><input onkeyup="checkp(4,value);" type="text" size="50" name="tel_zakazchika"></td>
		</tr>
		<tr height=30>
			<td>E-mail&nbsp*</td>
			<td id="p5" align=center><span style="color:#ffc600;">-</span></td>
			<td><input onkeyup="checkp(5,value);" type="text" size="50" name="mail_zakazchika"></td>
		</tr>
		<tr height=30>
			<td>Номера проектов&nbsp*</td>
			<td id="p6" align=center><span style="color:#ffc600;">-</span></td>
			<td><input onkeyup="checkp(6,value);" type="text" size="50" name="projects"></td>
		</tr>
		<tr height=3><td colspan=3></td></tr>
		<tr height=60>
			<td>Дополнительная информация</td>
			<td id=""></td>
			<td align=right><TEXTAREA type="text" name="dop_info" rows=5 cols=223></TEXTAREA></td>
		</tr>
		<tr height=10><td colspan=3></td></tr>
		<tr align=right>
			<td colspan=3>
				<input class="button" type="reset"> &nbsp
	<input class="button" type="submit" name="zayavka" value="Отправить">
			</td>
		</tr>
	</table>
</form>  

<script type="text/javascript" charset="windows-1251">
	<?if (isset($_REQUEST['otpr'])){?>
		alert("Ваша заявка отправлена.");
	<? } ?>
var p=[];
for (var i=1;i<4;i++) p[i]=0;

function checkp(n,t){
	if ((n!=1)&&(n!=19)) {
			if (t!=""){
			p[n]=1;
			document.getElementById("p"+n).innerHTML='<span style="color:#ffc600;">+</span>';
		}else{
			p[n]=0;
			document.getElementById("p"+n).innerHTML='<span style="color:#ffc600;">-</span>';
		}
	}
}

function checksubmit(){
	var t=1;
	for (var i=1;i<22;i++)	t=t*p[i];
	if (t==0){
		alert("Ошибка! Проверьте правильность заполнения формы.");
		return false;
	}
	if (t==1){
		return true;
	}
}
function setreset(){
	for (var i=1;i<22;i++){
		document.getElementById("p"+i).innerHTML='<span style="color:#ffc600;">-</span>';
		document.getElementById("tr20").setAttribute("style","visibility: hidden;");
	}
	
}
</script>

</body>
</html>


Последний раз редактировалось dmitry_kiv; 01.05.2009 в 02:08.
Старый 01.05.2009, 02:27
duhowka вне форума Посмотреть профиль Отправить личное сообщение для duhowka Найти все сообщения от duhowka
  № 4  
Ответить с цитированием
duhowka

Регистрация: Mar 2009
Сообщений: 317
c разрешением файла надо писать

кстати. заметил 2 ошибочки:
1. php код лучше начинать <?php
2. надо в кавычках
Код:
if (isset($_REQUEST["zayavka"]))
p.s это конечно решение задачи, какое-то оно кривое. очень много не грамотностей чтоли. в итоге можно получить уязвимость для хакеров и не довольство для заказчика или посетителя.


Последний раз редактировалось duhowka; 01.05.2009 в 03:22.
Старый 01.05.2009, 06:31
dmitry_kiv вне форума Посмотреть профиль Отправить личное сообщение для dmitry_kiv Найти все сообщения от dmitry_kiv
  № 5  
Ответить с цитированием
dmitry_kiv
[+6 04.04.09]

Регистрация: Apr 2009
Сообщений: 32
duhowka может посоветуешь что нибудь более стандартное?... просто программист у нас появился, код написал и пропал. я вот разгребаю

кстати указав zayavka.php тоже не работает...(

Старый 01.05.2009, 15:26
duhowka вне форума Посмотреть профиль Отправить личное сообщение для duhowka Найти все сообщения от duhowka
  № 6  
Ответить с цитированием
duhowka

Регистрация: Mar 2009
Сообщений: 317
реализаций много разных. я так понимаю, что вам особых изысков не надо, поэтому предлагаю взять готовый, например, тут

Старый 02.05.2009, 00:51
ffffff вне форума Посмотреть профиль Отправить личное сообщение для ffffff Посетить домашнюю страницу ffffff Найти все сообщения от ffffff
  № 7  
Ответить с цитированием
ffffff
 
Аватар для ffffff

Регистрация: Aug 2005
Адрес: Москва
Сообщений: 825
Отправить сообщение для ffffff с помощью ICQ
А еще лучше взять Zend_Mail из Zend FrameWork. Строить письма путем объединения строк - плохая практика. Лучше создать шаблон.

файл tmpl.tpl.php
PHP код:
E-Mail:    <?php echo $user['username']  ?> 
Имя:    <?php echo $profile['first_name'] . ' ' $profile['middle_name'] . ' ' $profile['last_name'?> 
Адрес:    <?php echo $profile['postal_code'] . ', ' .$profile['country'] . ', ' .$profile['city'] . ', ' $profile['address']  ?> 
Тел.:    <?php echo $profile['phone']   ?> 
------------------------------------------
Курс у.е. <?php echo $ue ?> рублей
Фиксированный платеж: <?php echo ($tax $ue?>рублей

<?php $i=0 ?>
<?php 
foreach ($this->goods as $item): ?>
<?php 
    $i
++;
?>
----- <?php echo $i ?> -----

Название: <?php echo $item['name'?>  Кол-во: <?php echo $item['qty'?> 
Цена: <?php echo ($item['price'] * $ue); ?>р Сумма: <?php echo ($item['price'] * $item['qty'] * $ue); ?>р 

<?php endforeach; ?>

Итого: <?php echo $this->summ ?> рублей
в исполняемом файле делаем так:
PHP код:
ob_start();
include 
'tmpl.tpl.php';
$message ob_get_contents();
ob_end_clean(); 
__________________
мой блог http://www.madie.ru

Создать новую тему Ответ Часовой пояс GMT +4, время: 20:26.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 20:26.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.