Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите с таймером!!! pls 
:(
    Опции темы
Inna
Дата 20.8.2003, 15:14 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











При загрузке страницы, написанной на PHP тегами Html,
на странице отображается форма.
При нажатии на кнопку формы "Готово", данные формы отправляются на e-mail.

НУЖНО: чтобы через час эта форма сама отправилась на почту,
т.е. если пользователь не успел заполнить все поля за час,
то через час программа php должна выйти из конструкции if в конструкцию else,
где описана функция отправки после проверки.

Я уже нашла библиотечный файл Timer.php, но он работает так:
просто сообщается, сколько времени прошло, когда спросишь его об этом,
а мне надо, чтобы когда время прошло, сработала моя спец. функция.

  Вверх
Inna
Дата 20.8.2003, 15:40 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











C функцией set_time_limit() у меня тоже ничего не получилось
  Вверх
MuToGeN
Дата 20.8.2003, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



Можно на JS
Код
<form id="myForm">
...
</form>

<script language="JavaScript">
SetInterval("document.all.myForm.submit();",3600000);
</script>
Или я чего-то недопонял?


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Inna
Дата 20.8.2003, 16:13 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











На JS можно, но форма у меня связана с PHP,
я никак не смогу связать код JavaScript с кодом Php,
вот и парюсь из-за этого.
Жаль что нельзя передать значение переменной из JavaScript в PHP
  Вверх
Inna
Дата 20.8.2003, 16:18 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Код моего файла следующий:
Код

<?php
/***************************************************************************************
             Заполнение пользователем запароленной страницы,
             тестирующей дилеров для их аттестации за 1 час,
             с последующим формированием отчета и отправкой
             его на e-mail проверяющего.
 sendtest.php -  проверка заполнения обязательных полей
                 формы теста, отправка данных на e-mail.
 автор: Руснак Инна Александровна
 e-mail: [email protected]
 URL: http://iar.boom.ru
 август 2003
***************************************************************************************/



if (!@$send){ ?>

     <TABLE cellSpacing=1 cellPadding=4  border=0  width="100%">
         <TBODY>
           <TR>
             <TD >

<!-- <FORM action="mailto:[email protected]" ENCTYPE=text/plain> -->
<!-- <FORM action="send.php" method=POST> -->
<!-- <FORM action="send.php" method=POST> -->
<!-- <FORM action="send.php"  onSubmit="return SendForm();"> -->
<!-- <FORM  onSubmit="return SendForm();"> -->
<form action="?id=sendtest" method=POST>
         <h2>Введите  данные о себе:</h2>

     <TABLE cellSpacing=1 cellPadding=4  border=0>
         <TBODY>
           <TR>
             <TD width="110" >
Фамилия: *
             </TD>
             <TD>
<INPUT TYPE="text" SIZE=25 NAME="lastname">
               </TD>
           </TR>
           <TR>
             <TD width="110" >
Имя: *
             </TD>
             <TD>
<INPUT TYPE="text" SIZE=15 NAME="firstname">
               </TD>
           </TR>
           <TR>
             <TD width="110" >
Отчество:
               </TD>
             <TD>
<INPUT TYPE="text" SIZE=20 NAME="patronymic">
               </TD>
           </TR>
           <TR>
             <TD width="110" >
Организация: *
               </TD>
             <TD>
<INPUT TYPE="text" SIZE=50 NAME="org">
               </TD>
           </TR>
         </TBODY>
       </TABLE>
<br>
         <em><font size=1>* - необходимые для заполнения поля</font></em>
<br>
<br>
<br>
<br>
<br>
  <H1>Вопросы для аттестации дилеров</H1>
<br>
       <em>Вам дается 1 час, чтобы ответить на  вопросы, описанные ниже.
 <br>
   После заполнения полей нажмите кнопку "Готово", и  ваши ответы будут отправлены в виде отчета на e-mail

проверяющего.
 <br>
         В случае если вам не хватит установленного времени на выполнение задания,
         в отчет будут включены только те вопросы, на которые вы успели ответить, и отчет автоматически будет отправлен
  через 1 час после начала работы.
         </em> <br>
<br>



<br>
1. Принцип индексации. Его суть, реализация в базисно-индексном методе расчета смет.
<br>
&nbsp;&nbsp;&nbsp;
<textarea name="answ_01" rows=5 cols=55></textarea>
<br>
<br>
2.  Что включают транспортные расходы?
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_02" VALUE="погрузку и транспортировку."> погрузку и транспортировку;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_02" VALUE="погрузку, транспортировку и выгрузку."> погрузку, транспортировку и выгрузку;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_02" VALUE="все погрузки, транспортировки и разгрузки до приобъектного склада."> все погрузки,

транспортировки и разгрузки до приобъектного склада;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_02" VALUE="все погрузки, разгрузки  и перегрузки."> все погрузки, разгрузки  и перегрузки.
<br>
<br>

3. Расскажите о соответствии блоков сметно-нормативной базы 1984 года и сметно-нормативной базы  2001 года.
<br>
&nbsp;&nbsp;&nbsp;
<textarea name="answ_03" rows=5 cols=55></textarea>
<br>
<br>
4. По какому индексу индексируется зарплата машинистов для исчисления прямых затрат в текущей цене?
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_04" VALUE="по индексу зарплаты остальных рабочих."> по индексу зарплаты остальных рабочих;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_04" VALUE="по индексу эксплуатации машин."> по индексу эксплуатации машин;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_04" VALUE="по отдельному индексу."> по отдельному индексу;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_04" VALUE="вообще не индексируется."> вообще не индексируется;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_04" VALUE="индексируется, но не учитывается при расчете."> индексируется, но не учитывается при

расчете.
<br>
<br>

5. Как вы считаете, почему ресурсный метод расчета сметы обеспечивает более  точную оценку стоимости работы? Почему он при

этом не получал широкого
распространения до создания  последних версий сметных программ?
<br>
&nbsp;&nbsp;&nbsp;
<textarea name="answ_05" rows=5 cols=55></textarea>
<br>
<br>

6.  Одинаковым ли образом в смету  включаются неучтенные ресурсы (материалы и работа машин)?
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_06" VALUE="одинаковым образом: под расценкой."> одинаковым образом: под расценкой;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_06" VALUE="одинаковым образом: в отдельной таблице."> одинаковым образом: в отдельной таблице;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_06" VALUE="материалы под расценкой, а работа машин - в отдельной таблице."> материалы под

расценкой, а работа машин - в отдельной таблице;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_06" VALUE="материалы и под расценкой, и в отдельной таблице, а работа машин - в отдельной

таблице.">
материалы и под расценкой, и в отдельной таблице, а работа машин -
<br>&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  в отдельной таблице;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_06" VALUE="работа машин под расценкой, а материалы - в отдельной таблице."> работа машин под

расценкой, а материалы - в отдельной таблице.
<br>
<br>

7.  Каким образом структура глав сводного сметного расчета отражается в локальной смете на  строительно-монтажные работы?
<br>
&nbsp;&nbsp;&nbsp;
<textarea name="answ_07" rows=5 cols=55></textarea>
<br>
<br>

8.  Чем могут различаться переходы в цены в смете и акте  КС-2?
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_08" VALUE="разные индексы."> разные индексы;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_08" VALUE="разные накладные расходы и сметная прибыль."> разные накладные расходы и сметная

прибыль;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_08" VALUE="в смете больше коэффициентов, чем в акте."> в смете больше коэффициентов, чем в акте;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_08" VALUE="в акте больше коэффициентов, чем в смете."> в акте больше коэффициентов, чем в смете;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_08" VALUE="ничем не различаются."> ничем не различаются.
<br>
<br>

9.  В чем отличия сметы на  пуско-наладочные работы базисно-индексным методом от сметы на строительно-монтажные работы

базисно-индексным методом?
<br>
&nbsp;&nbsp;&nbsp;
<textarea name="answ_09" rows=5 cols=55></textarea>
<br>
<br>

10.  Что общего у двух формул расчета стоимости разработки проектов?
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_10" VALUE="одинаковые исходные данные."> одинаковые исходные данные;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_10" VALUE="используются одинаковые арифметические действия."> используются одинаковые

арифметические действия;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_10" VALUE="в результате получается одно и то же число."> в результате получается одно и то же

число;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_10" VALUE="в результате получается стоимость в одном и том же уровне цен."> в результате

получается стоимость в одном и том же уровне цен;
<br>
&nbsp;&nbsp;&nbsp;
<INPUT TYPE=radio NAME="answ_10" VALUE="к результату будут применяться одни и те же коэффициенты."> к результату будут

применяться одни и те же коэффициенты.
<br>
<br>


&nbsp;&nbsp;&nbsp;
<INPUT type="submit" value="Готово" name="send" style="margin-top: 10;">


</form>
               </TD>
           </TR>
         </TBODY>
       </TABLE>
<?php
}  // end if

else {

if (!empty($lastname) && !empty($firstname) && !empty($org))       //  empty -- определяет, присвоено ли у переменной какое

либо значение             // Описание:   int empty (mixed var);
{                                                                                                               //  

Возвращает false, если var существует и имеет не пустое или не нулевое значение; true в обратном случае.
// Редактирование и отправка отчета
$lastname        = substr($lastname,0,25);        //  substr -- Возвращает часть строки              // Описание:  

string substr(string string, int start, int [length]);
$firstname       = substr($firstname,0,15);       //  substr   возвращает часть строки string, определяемую

параметрами start (начало) и length (длина).
$patronymic      = substr($patronymic,0,20);
$org             = substr($org,0,50);

$answ_02         = substr($answ_02,0,100);
$answ_04         = substr($answ_04,0,100);
$answ_06         = substr($answ_06,0,100);
$answ_08         = substr($answ_08,0,100);
$answ_10         = substr($answ_10,0,100);

$lastname       = strip_tags($lastname);
$firstname      = strip_tags($firstname);
$patronymic     = strip_tags($patronymic);
$org            = strip_tags($org);
$answ_01        = strip_tags($answ_01);
$answ_02        = strip_tags($answ_02);
$answ_03        = strip_tags($answ_03);
$answ_04        = strip_tags($answ_04);
$answ_05        = strip_tags($answ_05);
$answ_06        = strip_tags($answ_06);
$answ_07        = strip_tags($answ_07);
$answ_08        = strip_tags($answ_08);
$answ_09        = strip_tags($answ_09);
$answ_10        = strip_tags($answ_10);
$what_to_send = "
Content-type: text/plain; charset=windows-1251\n\n
Фамилия: $lastname
Имя: $firstname
Отчество: $patronymic
Организация: $org

1. Принцип индексации. Его суть, реализация в базисно-индексном методе расчета смет:
$answ_01

2.  Что включают транспортные расходы?
$answ_02

3. Расскажите о соответствии блоков сметно-нормативной базы 1984 года и сметно-нормативной базы  2001 года:
$answ_03

4. По какому индексу индексируется зарплата машинистов для исчисления прямых затрат в текущей цене?
$answ_04

5. Как вы считаете, почему ресурсный метод расчета сметы обеспечивает более  точную оценку стоимости работы? Почему он при

этом не получал широкого распространения до создания  последних версий сметных программ?
$answ_05

6. Одинаковым ли образом в смету  включаются неучтенные ресурсы (материалы и работа машин)?
$answ_06

7.  Каким образом структура глав сводного сметного расчета отражается в локальной смете на  строительно-монтажные работы?
$answ_07


8.  Чем могут различаться переходы в цены в смете и акте  КС-2?
$answ_08

9.  В чем отличия сметы на  пуско-наладочные работы базисно-индексным методом от сметы на строительно-монтажные работы

базисно-индексным методом?
$answ_09

10.  Что общего у двух формул расчета стоимости разработки проектов?
$answ_10

";
$what_to_send = wordwrap ($what_to_send, 60, "\n");
// if(@mail ("[email protected]", "", $what_to_send))
if(@mail ("[email protected]", "Ответы на вопросы для аттестации дилеров", $what_to_send))
 {
  echo "Ваше сообщение успешно отправлено!";
 }
else
 {
  echo "Ошибка! Ваше сообщение не отправлено.";
 }
}
else
{
  echo "<font color=red>Вы не заполнили одно из полей  формы: \"фамилия\", \"имя\" или \"организация\"</font><br>";
  echo "Чтобы вернуться назад, нажмите <a href=\"javascript: history.go(-1);\">сюда</a>.";
}
}

?>


Можно было бы эту форму отправить и с помощью JavaScript, но мне надо, чтобы этим занимался
непосредственно сервер, а не браузер пользователя.
  Вверх
MuToGeN
Дата 20.8.2003, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



Извиняюсь, но в длинном коде разбираться нет времени. Можете поконкретнее описать задачу на словах? То, что а предложил - это автоматическая отправка данных скрипту через 1 час.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Unregistered
Дата 20.8.2003, 17:08 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Да.
Но просто моя форма по нажатию на submit переходит к коду PHP.
У меня PHP занимается отправкой.
Не хочу отправлять с помощью JavaScript, т.к. если у пользователя браузер не поддерживает JavaScript,
то форма не отправиться.
  Вверх
arial
Дата 20.8.2003, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



Inna, родная! Почему нельзя связать JS с PHP?? Не понимаю.


--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
Inna
Дата 20.8.2003, 17:28 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Потому что везде написано, что нельзя передать значение переменной из JS в PHP,
т.к. c PHP работает сервер, а с JS - броузер пользователя.

Но если подскажите мне, как в коде JS перейти к коду PHP, буду благодарна
  Вверх
MuToGeN
Дата 20.8.2003, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 7
Всего: 32



С помощью серверных средств так и так нельзя ничего с этим сделать, это как раз не тот случай. А как передать значение переменной из JS PHP-скрипту:
Код
<script language="JavaScript">
var a=111;
String b='text';
document.location.href='http://www.site.com/script.php?a='+a+'&b='+b;
</script>



--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
arial
Дата 20.8.2003, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



Смотри:
Алгоритм::
Зашел юзер, взялся за форму. Пишем время начала заполнения формы и данные, по которым можно узнать юзера в базу. JS выполняет перезагрузку страницы с определенным параметром (параметр за тем, чтобы узнать, что юзер занят заполнением формы) раз в десять минут, к примеру. PHP ищет этого юзера в базе, и проверяет время. Если оно истекло, выполняем mail, или что там.
Ну примерно так, короче.

А теперь вопрос:
Что это за форма, которую люди не успевают заполнить за час? tounge.gif


--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
Inna
Дата 21.8.2003, 08:04 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Спасибо, добрые люди! smile.gif

Попробую, думаю, получиться.
  Вверх
Inna
Дата 21.8.2003, 08:06 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











А форма - это тест: вопросы для аттестации дилеров (рабочий сайт),
там 10 вопросов, они должны ответить за час.
  Вверх
IZ@TOP
Дата 21.8.2003, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 44
Всего: 73



Inna думаешь за час не заполнят ? Если не заполнят за час, значит надо их банить ... нужны такие диллеры которые несколько простых вопросов за час не могут заполнить smile.gif


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Inna
Дата 22.8.2003, 17:50 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ну, не я же это придумала smile.gif
я просто делаю, что велено

Вот и будет видно - если за час не зополнят, то пимьсо придет не полное - а там уж разберуться, что с ними делать ...

Приятно пообщаться с хорошими людьми smile.gif

Чао!!!
Удачных всем выходных!!!


-----------
Inna
http://iar.boom.ru
  Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0604 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.