Подтвердить что ты не робот

Самый простой способ хранения данных с веб-сайта (на стороне сервера)

У меня очень простой веб-сайт (который на самом деле является одной страницей), есть одно поле ввода и кнопка.
Мне нужно хранить данные, представленные пользователями где-то на стороне сервера. Совершенным способом может быть простой текстовый файл и новые строки, добавленные к нему после каждого нажатия кнопки. Файл журнала будет также в порядке.
Насколько я понимаю, это невозможно с самим JavaScript. Я ищу простое решение, желательно без серверного программирования (но если это необходимо, оно должно быть максимально простым и готовым к работе). Я могу использовать некоторые побочные услуги, если это может быть полезно. Пожалуйста, помогите.
Заранее спасибо.

UPD. Просто хочу перефразировать главный вопрос. Мне не нужно что-то хранить на стороне сервера. Мне нужно собрать некоторые данные от пользователей. Является ли это возможным? Было бы также хорошо, если он, например, будет просто отправлен на мой e-mail.

4b9b3361

Ответ 1

Для очень простой формы-сервера-журнала script:

Ваша форма:

<form action="save-to-log.php" method="POST">
  <fieldset>
    <legend>Add to log</legend>
    <p>
      Message:
      <textarea name="message"></textarea>
    </p>
    <p>
      <input type="submit" value="SAVE" />
    </p>
  </fieldset>
</form>

Затем save-to-log.php

<?php
  $log_file_name = 'mylog.log'; // Change to the log file name
  $message = $_POST['message']; // incoming message
  file_put_contents($log_file_name, $message, FILE_APPEND);
  header('Location: /'); // redirect back to the main site

Если это хост unix, вам нужно добавить 755 разрешений в каталог журнала, чтобы у PHP был доступ к записи. Кроме того, у вас будет форма, которая добавляет информацию в mylog.log.

Follow-Up

Если вам не обязательно нужно хранить его на сервере (вы упомянули письмо), вы можете использовать следующее вместо PHP script:

<?php
  $to_email = '[email protected]';
  $subject = 'User feedback from site';
  $message = $_POST['message'];

  // this may need configuring depending on your host. If you find the email isn't
  // being sent, look up the error you're receiving or post another question here on
  // SO.
  mail($to_email, $subject, $message);

  header('Location: /');

Ответ 2

Вы не можете хранить информацию на сервере без какой-либо стороне сервера script.

В хранилище два хранятся данные, на клиенте и на сервере.

На стороне клиент существует множество способов от куки файлов до Store.js, однако это звучит как вы хотите сохранить информацию на сервере.

Для хранения на сервере вам потребуется какое-то приложение, которое может получать сообщения из javascript/http и сохранять их в файле.

В вашем случае будет очень простой PHP script, как показано ниже:

<?php

//Was the request (post or get) parameter data supplied?
if(!empty($_REQUEST['data']) {
    $file = 'log.txt';
    $data = $_REQUEST['data']."\n";

    // using the FILE_APPEND flag to append the content to the end of the file
    // and the LOCK_EX flag to prevent anyone else writing to the file at the same time
    file_put_contents($file, $data, FILE_APPEND | LOCK_EX);

}

?>

Ответ 4

Если вы хотите получить данные, отправленные на ваш адрес электронной почты, существует несколько бесплатных сервисов, которые могут это сделать без установки каких-либо приложений на стороне сервера... PHP или CGI script все еще используется, но он размещен на услуга, а не вы. Все, что вам нужно сделать, это вставить код на свой сайт, а затем все отправленные данные будут отправлены на ваш адрес электронной почты.,

У многих людей нет ноу-хау, чтобы сделать это самостоятельно, или их хостинг-сервис не позволит отправлять почту. Вот почему эти службы существуют. И, конечно, большинство из них поддерживаются объявлениями, которые помещаются в электронное письмо, которое вы получаете из формы.

В любом случае, вот ссылка на хороший сервис, который я нашел. Вы можете также "Бесплатная обработка формы" Google, чтобы найти больше.

https://secure.tectite.com/hf/auth/GetStarted?WWWTECTITE

Надеюсь, что это поможет.