Веб-формы в Excel вместо электронной почты - PullRequest
0 голосов
/ 08 апреля 2011

Мой клиент спросил меня, могу ли я найти решение этой проблемы. Его веб-сайт (все еще WIP) http://welkommagazine.nl/luuk/ имеет форму. Форма, очевидно, использует сценарий sendmail для отправки формы на электронную почту. После этого он вручную копирует / вставляет все документы в Excel.

Он хочет, чтобы автоматические формы онлайн-форм добавлялись в документ Excel, чтобы сэкономить ему много работы.

Теперь я не программист, но дизайнер ... Я думаю, что это можно сделать, но я понятия не имею, как. Я много гуглил за это, и единственное, что я нашел, это Dreamweaverplugin.

Есть ли способ сделать это, если да, то как?

Ответы [ 2 ]

2 голосов
/ 08 апреля 2011

Не ответ программиста, но ...
Я думаю, что простое решение - использовать Google Docs. Вы можете настроить таблицу Google и связать с ней форму. Когда пользователь заполняет форму, его данные добавляются в электронную таблицу.
Ваш клиент может загрузить это в любое время.
На рынке есть и другие провайдеры, некоторые бесплатные, некоторые нет. Например: wufoo.com

0 голосов
/ 11 апреля 2011

Нашел ответ сам.Я написал фрагмент кода PHP, который на самом деле хранит разделенные запятой поля в CSV-файле и отправляет электронное письмо на нужный адрес с заполненными полями.


if(isset($_POST['Submit'])){ 
   $pakket = $_POST['pakket']; 
   $extragidsen = $_POST['extragidsen']; 
   $naambedrijf = $_POST['naambedrijf']; 
   $err = ''; 

   if(trim($pakket)==''){ 
      $err .= '-Please enter a name<br>'; 
   } 
   if(empty($extragidsen)){ 
      $err .= '-Please enter an email address'; 
   } 
   if(strlen($naambedrijf)==0){ 
      $err .= '-Please enter a comment<br>'; 
   } 

   if($err!=''){ 
      echo $err; 
   } 
   else{ 
      $filename = 'file.csv'; 
      $somecontent = $pakket . ',' . $extragidsen . ',' . $naambedrijf . "\n"; 

      // Let's make sure the file exists and is writable first. 
      if (is_writable($filename)) { 

         // In our example we're opening $filename in append mode. 
         // The file pointer is at the bottom of the file hence 
         // that's where $somecontent will go when we fwrite() it. 
         if (!$handle = fopen($filename, 'a')) { 
             echo "Cannot open file ($filename)"; 
             exit; 
         } 

         // Write $somecontent to our opened file. 
         if (fwrite($handle, $somecontent) === FALSE) { 
            echo "Cannot write to file ($filename)"; 
            exit; 
         } 

        //--------------------------Set these paramaters--------------------------

        // Subject of email sent to you.
        $subject = 'Inschrijving welkom'; 

        // Your email address. This is where the form information will be sent. 
        $emailadd = 'luuk@luukratief.com'; 


        // Where to redirect after form is processed. 
        $url = 'http://www.google.com'; 

        // Makes all fields required. If set to '1' no field can not be empty. If set to '0' any or all fields can be empty.
        $req = '0'; 

        // --------------------------Do not edit below this line--------------------------
        $text = "Results from form:\n\n"; 
        $space = ' ';
        $line = '
        ';
        foreach ($_POST as $key => $value)
        {
        if ($req == '1')
        {
        if ($value == '')
        {echo "$key is empty";die;}
        }
        $j = strlen($key);
        if ($j >= 20)
        {echo "Name of form element $key cannot be longer than 20 characters";die;}
        $j = 20 - $j;
        for ($i = 1; $i ';
         fclose($handle); 

      } else { 
         echo "The file $filename is not writable"; 
      } 
   } 
} 

Может быть, код не настолько чист, как может быть, но это работает.Не стесняйтесь очищать код, если хотите:)

Я догадался, что сам отвечу на это для сообщества ... Кстати, вам нужно установить права на "запись" для "file.csv" cheers

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...