Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Запись в файл из формы с сохранением на сервере.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
xardboy
Отправлено: 26 Апреля, 2007 - 16:53:44
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Апр. 2007  
Откуда: Киев


Помог: 0 раз(а)




Здраствуйте! Помогите найти, плиз, правильное решение... В ПШП я недолго всего месяца два Улыбка Надо сделать так, чтобы пользователь на сайте заполнил N-ное количество INPUT-ов, и их значения записались в файл text1.txt, в следующий раз - в text2.txt и так далее... Почему-то у меня не получаеться так толком этот скрипт написать, может кто знает, где такой взять для последуещего изучения?


-----
эх...
 
 Top
valenok Модератор
Отправлено: 26 Апреля, 2007 - 17:19:34
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Вы забыли написать тут ваш код.

Логически я себе представляю это так:
Скрипт получил данные из формы.
Узнал номер файла в который следует записывать
записал данные в файл с этим номером
Запомнил следущий номер.
закончил работу.

Номер файла, я бы тоже записывал в отдельном файле.

За два месяца получать данные из формы, я надеюсь, вы научились.
Для работы с чтением и записью содержимого файла работают со следующими функциями:


А дальше думайте сами.


-----
Truly yours, Sasha.
 
My status
 Top
-SCHATTEN-
Отправлено: 26 Апреля, 2007 - 20:36:43
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




xardboy пишет:
чтобы пользователь на сайте заполнил N-ное количество INPUT-ов,

Здесь нужно чтоб пользователь заполнил определенные поля или просто определенное их количество ?

xardboy пишет:
и их значения записались в файл text1.txt, в следующий раз - в text2.txt и так далее...

записывайте название последнего созданного файла в отдельный фаил, потом просто увеличивайте цифру на 1.

Можно осуществить это проверкой наличия файла с именем ***Х.txt , если существует , то след цифра в названии.

Но это плохой способ, потому что с увеличением кол-ва файлов будет рости и нагрузка на сервер, а значит и время выполнения скрипта.
 
 Top
xardboy
Отправлено: 27 Апреля, 2007 - 11:22:12
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Апр. 2007  
Откуда: Киев


Помог: 0 раз(а)




не-а, имя файла может быть разным, главное, чтобы каждый раз запись была в новый файл, мона по принципу гостевой книги: файл 22.03.2007.14.55.txt. До этого я уже давно додумался. Будет определенное количество полей ввода, каждое со своим именем.

Я просто хочу какой-то примерчик, потому что написать скрипт с нуля для меня пока непросто, если можно так выразиться. У меня эта штуковина (форма) была раньше на HTML+JavaScript, решил перенести на ПШП.


-----
эх...
 
 Top
valenok Модератор
Отправлено: 27 Апреля, 2007 - 11:40:28
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




напиши мне пожалуйста как ты на JavaScript сохранял данные из формы в файл.
Можно как вы предположили. Можно по времени с датой. Можно да вообще как угодно.



Вы напишите, а мы поможем.

(Если ваше сохранение в файл на JavaScript'е будет работать, код я вам лично напишу, с комментариями, пояснениями и персональными консультациями.)


-----
Truly yours, Sasha.
 
My status
 Top
xardboy
Отправлено: 28 Апреля, 2007 - 10:01:19
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Апр. 2007  
Откуда: Киев


Помог: 0 раз(а)




Не сохранение в файл, а отправка по почте. JavaScript может записать что то на клиентской машине, а почта дело ненадежное для работы с файлами, поэтому я и решил перейти на ПШП. Функции открытия, закрытия и сохранения файлов я знаю, я не могу додуматься, как сделать так, чтобы данные записывались не в один ряд, а:
параметр1 = значение(1)
параметр2 = знасение(2)

Я нашел fwrite - пример скрипта, который записывает строку в файл. Только надо там дописать, чтобы он (скрипт) этот файл еще и создавал.

Буду сидеть корпеть...




-----
эх...
 
 Top
valenok Модератор
Отправлено: 28 Апреля, 2007 - 10:15:52
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)





прочитайте всё до комментариев и читайте внимательно.
Там на Русском или почти на любом языке мира по заказу.



-----
Truly yours, Sasha.
 
My status
 Top
Джур
Отправлено: 28 Апреля, 2007 - 10:16:08
Post Id



Посетитель


Покинул форум
Сообщений всего: 423
Дата рег-ции: Март 2007  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1.  
  2. <form action method=post>
  3. <input type=text name=wer><br>
  4. <input type=text name=sdf><br>
  5. <input type=text name=sdfc><br>
  6. <input type=submit name=send></form>
  7. <?PHP
  8. $t='';
  9. if(isset($_POST['send'])){
  10.         foreach($_POST as $k=>$v){
  11.         $t.=$k." = ".$v." ???n";
  12.    }
  13.    $f=fopen(time().".txt","w");
  14.    fwrite($f,$t);
  15.    fclose($f);
  16. }
  17.  

ну а так сойдет?
P.S. вместо ??? нужно слешь вставить... а то на форуме он из кода вырезается Недовольство, огорчение


-----
Тамбовский каджит тебе товарищ
 
 Top
xardboy
Отправлено: 28 Апреля, 2007 - 10:25:43
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Апр. 2007  
Откуда: Киев


Помог: 0 раз(а)




TO Джур:

Сойдет... Только с "/n" надо побаловаться, чтобы существовал в файле перенос строки. Примерно то же я только что пытался написать, только без этого:

Джур пишет:
if(isset($_POST['send'])){
foreach($_POST as $k=>$v)



-----
эх...
 
 Top
valenok Модератор
Отправлено: 28 Апреля, 2007 - 10:30:34
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




слеш в обратную сторону \n


-----
Truly yours, Sasha.
 
My status
 Top
xardboy
Отправлено: 28 Апреля, 2007 - 11:00:39
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Апр. 2007  
Откуда: Киев


Помог: 0 раз(а)




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


-----
эх...
 
 Top
valenok Модератор
Отправлено: 28 Апреля, 2007 - 11:08:59
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Что ещё за квадрат ?
Запусти скрипт Джура, потом открой файл в блокноте
там должно быть так:

PHP:
скопировать код в буфер обмена
  1.  
  2.  <form action method=post>
  3.   <input type=text name='name'>
  4.   <input type=text name='nick'>
  5.   <input type=text name='phone'>
  6.   <input type=text name='pass'>
  7.   <input type=submit name=send>
  8. </form>
  9.  
  10. <?PHP
  11.  $t='';
  12.  
  13.  if(isset($_POST['send'])){
  14.         foreach($_POST as $k=>$v){
  15.           $t.=$k." -> ".$v."\\r\\n";
  16.         }
  17.     $f=fopen(time().".txt","w+");
  18.     fwrite($f,$t);
  19.     fclose($f);
  20.  }
  21.  


PHP:
скопировать код в буфер обмена
  1.  
  2. name -> Sasha
  3. nick -> NIckname
  4. phone -> +123
  5. pass -> abc123456
  6.  


-----
Truly yours, Sasha.
 
My status
 Top
xardboy
Отправлено: 28 Апреля, 2007 - 11:24:58
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Апр. 2007  
Откуда: Киев


Помог: 0 раз(а)




rn - работает, перенос ставиться. Только для удобства я поствил не
$f=fopen(time().".txt","w+");

а

$f=fopen(date('d-m-y').".txt","w");

А как есчо добавить в названии не только дату, а и время?

time() выдает что-то наподобие "1177748742.txt"


-----
эх...
 
 Top
valenok Модератор
Отправлено: 28 Апреля, 2007 - 11:25:48
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)







Чем w удобней w+ ?


-----
Truly yours, Sasha.
 
My status
 Top
xardboy
Отправлено: 28 Апреля, 2007 - 11:29:07
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Апр. 2007  
Откуда: Киев


Помог: 0 раз(а)




просто забыл плюсик доставить..

З.Ы. Ах ну да, time() выдает количестао милисекунд с 1970 года, по-мойму.

Вот результат нашей роботы:


Цитата:
<form action method=post>
<input type=text name=name>
<input type=text name=address>
<input type=text name=phone>
<input type=submit name=send>
</form>
<?php
$t='';
if(isset($_POST['send'])){
foreach($_POST as $k=>$v){
$t.=$k." = ".$v."rn";
}
$f=fopen(date('d-m-y,H-i-s'). ".txt","w+");
fwrite($f,$t);
fclose($f);
}


Осталось проверку ввести и интегрировать в сайт. Вам всем БаЛЬШОЕ Спасибо. Я сам никогда бы не додумался. А есчо такой вопросик: можно ли параметры name & value задавать русским языком? У меня-то раньше работало(на почту приходило на русском), а вот как у ПШП + Апач с русским языком отношения?


-----
эх...
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB