Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Скрипт приема заявок (https://forum.antichat.xyz/showthread.php?t=159093)

alpotemkin 25.11.2009 16:14

Скрипт приема заявок
 
Доброго времени суток!

Появилась надобность в скрипте приема заявок. Пользовался поисковиками, но везде выдается скрипт отправки заявки на e-mail. И потому решил спросить у знающих людей на этом форуме.

1. Как должен выглядеть скрипт (пример):
----------
"Название заявки"

Имя команды: "текстовое поле"
Руководитель: "текстовое поле"
....
....

"чекпойнт" Вариант 1
"чекпойнт" Вариант 2
...
...

Отправить заявку
----------

P.S. Необходима возможность выбирать сразу несколько вариантов.

2. Отправка заполненной заявки
Хотелось бы, чтобы КАЖДАЯ отправленная заявка сохранялась на сервере в виде файла .txt.

Если где-то уже есть такая тема, то просьба не пинать, а кинуть ссылку на нее.

b3 25.11.2009 16:41

Нарисуй в фотошопе или выложи конкретно Техническое Задание, возможно ктото напишет бесплатно, то что ты просиш не сложно, поэтому может кто откликнется

alpotemkin 25.11.2009 17:44

Как же должно выглядеть техническое задание? Я вроде все описал... В фотошопе делать нет смысла, потому что мне нужен просто скрипт, а вписать его в шаблон я уже и сам смогу. :)

А вообще это выглядит примерно так:

Код:

<html>
<head>
  <meta content="text/html; charset=Windows-1251"
 http-equiv="content-type">
  <title>Отправка заявки</title>
</head>
<body>
<form action="post.php" method="post">
  <table align="center" border="0">
    <tbody>
      <tr>
        <td align="left">Название команды:</td>
        <td align="left"><input name="namecomand"></td>
      </tr>
      <tr>
        <td align="left">Руководитель:</td>
        <td align="left"><input name="name"></td>
      </tr>
      <tr>
        <td align="left">Описание задачи:</td>
        <td align="left"><textarea cols="50"
 rows="3" name="opisanie"></textarea></td>
      </tr>
      <tr>
        <td align="left">Выбор проектов:</td>
        <td align="left">
        <input name="option1" value="a1"
 type="checkbox">Вариант 1<br>
        <input name="option2" value="a2"
 type="checkbox">Вариант 2<br>
        <input name="option3" value="a3"
 type="checkbox">Вариант 3
        </td>
      </tr>
      <tr>
        <td></td>
        <td><input name="ok" value="Отправить заявку"
 type="submit"></td>
      </tr>
    </tbody>
  </table>
</form>
</body>
</html>

P.S. Скрипт post.php выполнял запрос к БД. Но в данном случае нужно, чтобы этот скрипт отправлял данные в .txt. И вопрос: подскажите, что это за скрипт.
Была мысль использовать функцию fwrite(), но она пишет все в один файл... что не есть удобно.

svesve 25.11.2009 18:09

post.php

PHP код:

<?
$namecommand
=$_POST['namecomand'];
$rukovod=$_POST['name'];
$descr=$_POST['opisanie'];
$project=$_POST['option'];

$rand=rand();

$handle fopen("zayavka$rand.txt""w+");
foreach(
$project as $option){
    
$opt .=$option."\r\n";
}

fwrite($handle$namecommand."\r\n");
fwrite($handle$rukovod."\r\n");
fwrite($handle$descr."\r\n");
fwrite($handle$opt."\r\n");
fclose($handle);
?>

сама страница с формой

PHP код:

<html>
<
head>
  <
meta content="text/html; charset=Windows-1251"
 
http-equiv="content-type">
  <
title>Отправка заявки</title>
</
head>
<
body>
<
form action="post.php" method="post">
  <
table align="center" border="0">
    <
tbody>
      <
tr>
        <
td align="left">Название команды:</td>
        <
td align="left"><input name="namecomand"></td>
      </
tr>
      <
tr>
        <
td align="left">Руководитель:</td>
        <
td align="left"><input name="name"></td>
      </
tr>
      <
tr>
        <
td align="left">Описание задачи:</td>
        <
td align="left"><textarea cols="50"
 
rows="3" name="opisanie"></textarea></td>
      </
tr>
      <
tr>
        <
td align="left">Выбор проектов:</td>
        <
td align="left">
        <
input name="option[]" value="a1"
 
type="checkbox">Вариант 1<br>
        <
input name="option[]" value="a2"
 
type="checkbox">Вариант 2<br>
        <
input name="option[]" value="a3"
 
type="checkbox">Вариант 3
        
</td>
      </
tr>
      <
tr>
        <
td></td>
        <
td><input name="ok" value="Отправить заявку"
 
type="submit"></td>
      </
tr>
    </
tbody>
  </
table>
</
form>
</
body>
</
html

сделано без проверки полей и т.п.

mailbrush 25.11.2009 18:26

svesve, зачем 4 раза вызывать одну и ту же функцию, если можно сделать все аккуратнее )?
Сейчас свой вариант напишу :)

svesve 25.11.2009 18:37

Цитата:

Сообщение от mailbrush
svesve, зачем 4 раза вызывать одну и ту же функцию, если можно сделать все аккуратнее )?
Сейчас свой вариант напишу :)

ну можно и 1 раз вызвать, не спорю.
сложить все данные в одну переменную и записать.

alpotemkin 25.11.2009 18:39

svesve, mailbrush, про такой способ использования fwrite() я даже и не знал... Я почему-то думал, что эта функция служит только для записи данных из форм в один текстовый файл.
mailbrush, был бы рад увидеть твой вариант скрипта. :)

Gray_f0x 25.11.2009 18:39

А на мой взгляд давать имени файла имя со случайным числом - это глупо, лучше уж время и дату.

svesve 25.11.2009 18:41

Цитата:

Сообщение от Gray_f0x
А на мой взгляд давать имени файла имя со случайным числом - это глупо, лучше уж время и дату.

время и дату я хотел сделать
но у тебя получиться файл час-минута-секунда-число-день-месяц-год

ибо если ты возьмешь час-минута или т.п. то файл перезапишеться )

и получается длинное имя файла, но это уже дело вкуса

mailbrush 25.11.2009 18:52

Ждите все, у меня он будет по id файлы писать)


Время: 00:55