Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

25.11.2009, 19:20
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
index.html
PHP код:
<html>
<head>
<meta content="text/html; charset=Windows-1251"
http-equiv="content-type"/>
<title>Отправка заявки</title>
</head>
<body>
<form action="write.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[]"
type="checkbox" value="Вариант 1" />Вариант 1<br/>
<input name="option[]" value="Вариант 2"
type="checkbox"/>Вариант 2<br/>
<input name="option[]" value="Вариант 3"
type="checkbox"/>Вариант 3
</td>
</tr>
<tr>
<td></td>
<td><input name="ok" value="Отправить заявку"
type="submit"/></td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
write.php
PHP код:
<?php
$settings['dir'] = 'query'; //папка для сохранения, в качестве текущей - "."
$settings['filename'] = 'query_%n.txt'; //имя файла, в качестве макроса %n (порядковый номер)
$settings['ids'][0] = '500'; //стартовый номер
//проверка на существование папки
if (!is_dir($settings['dir']))
if (mkdir($settings['dir']))
echo '+ Папка для записи создана!';
else
echo '- Папка для записи не создана!';
chdir($settings['dir']);
//процедура получения id
if ($dir = opendir('.'))
while (false !== ($file = readdir($dir)))
if ($file != "." && $file != "..")
if (preg_match('/' . str_replace('%n', '(\d+)', $settings['filename']) . '/', $file,
$names))
$settings['ids'][] = $names[1];
closedir($dir);
$settings['next_id'] = max($settings['ids']) + 1;
$settings['next_filename'] = str_replace('%n', $settings['next_id'], $settings['filename']);
$settings['text'] = 'Название команды: ' . $_POST['namecomand'] . "\r\n" .
'Руководитель: ' . $_POST['name'] . "\r\n" . 'Описание задачи: ' . $_POST['opisanie'] .
"\r\n" . 'Проэкты: ' . "\r\n* " . implode("\r\n* ", $_POST['option']);
$fp = fopen($settings['next_filename'], 'w+');
if (fwrite($fp, $settings['text']))
echo 'Данные добавлены!';
else
echo 'Данные не добавлены!';
fclose($fp);
?>
|
|
|

25.11.2009, 19:56
|
|
Познающий
Регистрация: 07.05.2008
Сообщений: 49
Провел на форуме: 90698
Репутация:
5
|
|
Задача решена, всем спасибо за помощь. А насчет случайных цифр в имени файла - я просто заменил на $rand=date("d.m.Y-G.i.s");
Не думаю, что в одну и ту же секунду пойдут 2 заявки...
mailbrush, а твой вариант тоже хорош... буду тестировать. 
Последний раз редактировалось alpotemkin; 25.11.2009 в 20:46..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|