Alaya » 2009.11.24 12:43

Подскажите пожалуйста код добавление статьи пользователем :
в папку
new_text
добавить текст
!Nazvane_Avtor_Data.txt
(название текста складывается из названия статьи, автора и даты добавления).
Колличество символов неограниченно, кодировка утф-8.

Gemorroj » 2009.11.24 14:03

тебе нужно сделать сохранение файла с определенным названием?

Alaya » 2009.11.24 19:20

Да , Паш , я хочу добавить в библиотеку, возможность добавления статей (не у всех есть возможность сперва тхт файлы писать, потом загружать. Да и некоторые пишут прямо в эфире.. В общем, мне нужно сохранять текст в тхт-файл, и пусть не через базу, хотя бы просто забросить в папку. Но что бы сохранялся он с определенным названием : название_статьи_автор_дата (что бы не было проблем с авторством)

staryisv » 2009.11.26 00:32

<?php
//имя пользователя
$name = $_POST['name'];
//его мыло
$email = $_POST['email'];
//дата
$date = date("d.m.Y-H.i.s");
//содержимое записи
$textarea = $_POST['textarea'];
// проверяем ввод данных
if (!empty($name) && !empty($email) && !empty($textarea)) {
//запоминаем данные
$text.= "$name \n";
$text.= "$email \n";
$text.= "$textarea \n";
//создаем и открываем файл для записи
$file = fopen("$date"."$name"."myfile.txt", "a+");
//записываем данные в файл
fwrite($file,$text);
//закрываем файл
fclose($file); }
?>
что то вроде этого,хотя,я могу и ошибаться. Или вот тут посмотри http://forum.php.su/topic.php?forum=60&topic=911

Alaya » 2009.11.26 12:28

Спасибо )))) попробую.

staryisv » 2009.11.27 14:58

Привет всем. Есть вопрос. Нужно создать некий файл,чтобы в нем была форма ввода данных. Типа фамилия,имя,мыло. После нажатия на кнопку "ввести" появлялась бы информация типа, ваша фамилия: фамилия введенная в форме,ваш е-майл: е-майл,введенный в форме.а при обновлении страницы все данные удалялись и пользователь возвращался бы опять к пустой форме.
Подскажите пожалуйста пример кода.
P.S. Желательно,чтобы это все было в одном файле. Сторонний временный файл,типа mass.txt не используем. И если можно, защиту от некорректного ввода Имени и Е-Майл.

Gemorroj » 2009.11.27 20:12

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
if ($_POST) {
echo 'Фамилия: ' . htmlspecialchars($_POST['surname'], ENT_NOQUOTES) . '<br/>
Email: ' . htmlspecialchars($_POST['email']);
} else {
echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="post">
<div>
Фамилия<br/>
<input type="text" name="surname" /><br/>
Email<br/>
<input type="text" name="email"/><br/>
<input type="submit"/>
</div>
</form>';
}
staryisv » 2009.11.28 10:23

Спасибо, Паша. Только когда я данные ввел и получил их,делаю обновление страницы, и данные остаются. А как сделать,чтобы снова к заполнению формы вернуться при обновлении? Чтобы при обновлении на второй странице снова попадать на первую?

Gemorroj » 2009.11.28 10:40

Код:

1
span style="color: #0000BB"><?phpsession_start();if ($_POST && !$_SESSION['post']) { $_SESSION['post'] = true; echo 'Фамилия: ' . htmlspecialchars($_POST['surname'], ENT_NOQUOTES) . '<br/> Email: ' . htmlspecialchars($_POST['email']);} else { $_SESSION['post'] = false; echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="post"> <div> Фамилия<br/> <input type="text" name="surname" /><br/> Email<br/> <input type="text" name="email"/><br/> <input type="submit"/> </div> </form>';}?>
staryisv » 2009.11.28 12:51

syntax error, unexpected '!' Ошибка в 3-ой строке. - вот это выдает.

Gemorroj » 2009.11.28 12:56

как я вижу, 3 строка пусая. скопируй и выполни код без изменений.

staryisv » 2009.11.28 13:42

Точно, где то не так скопировал. Извиняюсь. Все работает.

staryisv » 2009.11.28 15:58

Паша, а как сделать чтобы сессия не сохранялась? Вот ввел я скажем Иванов Ivan@site.ru и нажал я на ввод. Получил данные. Нажимаю в браузере назад. Там форма с моими данными. Я удаляю данные. И опять нажимаю ввод. И мне выдает тот же результат. Иванов Ivan@site.ru. хотя поля были пустые.

Gemorroj » 2009.11.28 16:46

это уже из разряда фантастики. единственное объяснение - кэш. в сесии ничего не сохраняется.

staryisv » 2009.11.28 18:05

Но ведь наверно можно что то сделать?запретить кэширование страницы? Где то видел похоже,типа no-Cache. Или это не то?

Gemorroj » 2009.11.28 18:30

то.

Код:

1
2
3
4
header('Expires: Thu, 21 Jul 1977 07:30:00 GMT');
header('Last-Modified: '.gmdate('r').' GMT');
header('Cache-Control: post-check=0, pre-check=0');
header('Pragma: no-cache');
staryisv » 2009.11.29 02:15

Во, точно. Спасибо, Паша.