2013-05-01 4 views
0

CSV 파일로 뉴스 레터 가입을 요청하는 특정 요청이 있습니다. 프론트 엔드 개발은 말할 것도없고 나는 백엔드에 관해서는 멍청하다.양식 데이터를 CSV로 보내는 방법

나는 작업하고있는 템플릿을 가지고 있으며 값을 전달하는 방식을 이해할 수 없습니다.

는 양식 코드는이를 만드는 방법을 알고 포스트

$(document).ready(function() { 
    var contactFormDefaults = new Array(); 
    contactFormDefaults['name'] = 'Your Name'; 
    contactFormDefaults['email'] = 'E-mail'; 
    contactFormDefaults['subject'] = 'Subject'; 
    contactFormDefaults['message'] = 'Message'; 
    contactFormDefaults['msg'] = $('.contactForm span#msg').html(); 

    $('.contactForm input[type="text"], .contactForm textarea').focus(function() { 
     $(this).addClass('inputHighlight').removeClass('errorOutline'); 
     if ($(this).hasClass('required')) { 
      $('.contactForm span#msg').html('This is a required field.').removeClass('errorMsg successMsg'); 
     } else { 
      $('.contactForm span#msg').html(contactFormDefaults['msg']).removeClass('errorMsg successMsg'); 
     } 
     if ($(this).val() == contactFormDefaults[$(this).attr('id')]) { 
      $(this).val(''); 
     } 
    }); 
    $('.contactForm input[type="text"], .contactForm textarea').blur(function() { 
     $(this).removeClass('inputHighlight'); 
     $('.contactForm span#msg').html(contactFormDefaults['msg']).removeClass('errorMsg successMsg'); 
     if ($(this).val() == '') { 
      $(this).val(contactFormDefaults[$(this).attr('id')]); 
     } 
    }); 

    $('.contactForm input[type="text"], .contactForm textarea').hover(function() { 
     $(this).addClass('inputHighlight'); 
    }, function() { 
     $(this).not(':focus').removeClass('inputHighlight'); 
    }); 

    $('.contactForm').submit(function() { 
     $('.contactForm .submit').attr("disabled", "disabled"); 
     $('#msg').html('<img src="images/loader-light.gif" />').removeClass('errorMsg successMsg'); 
     var isError = false; 
     $('.contactForm input, .contactForm textarea').each(function() { 
      if ($(this).hasClass('required') && ($.trim($(this).val()) == contactFormDefaults[$(this).attr('id')] || $.trim($(this).val()) == '')) { 
       $(this).addClass('errorOutline'); 
       $('#msg').html('There was an error sending your message. Please try again.').addClass('errorMsg'); 
       isError = true; 
      } 
      if ($(this).attr('id') == 'email') { 
       var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; 
       if (reg.test($(this).val()) == false) { 
        $(this).addClass('errorOutline'); 
        if (!isError) { 
         $('#msg').html('Please enter a valid e-mail address and try again.').addClass('errorMsg'); 
        } 
        isError = true; 
       } 
      } 
     }); 
     if (isError) { 
      $('.contactForm .submit').removeAttr("disabled"); 
      return false; 
     } else { 
      var name = $('#name').val(), 
       email = $('#email').val(), 
       subject = $('#subject').val(), 
       message = $('#message').val(); 
      $.ajaxSetup({ 
       cache: false 
      }); 
      var dataString = 'name=' + name + '&email=' + email + '&subject=' + subject + '&message=' + message + '&ajax=1'; 
      $.ajax({ 
       type: "POST", 
       url: "../myform.php", 
       data: dataString, 
       success: function (msg) { 
        // Check to see if the mail was successfully sent 
        if (msg == 'Mail sent') { 
         // Update the progress bar 
         $('#msg').html('Message sent.').addClass('successMsg'); 
         // Reset the subject field and message textbox 
         if (contactFormDefaults['subject']) { 
          $('#subject').val(contactFormDefaults['subject']); 
         } else { 
          $('#subject').val(''); 
         } 
         if (contactFormDefaults['message']) { 
          $('#message').val(contactFormDefaults['message']); 
         } else { 
          $('#message').val(''); 
         } 
        } else { 
         $('#msg').html('There was an error sending your email. Please try again.').addClass('errorMsg'); 
         $('.contactForm .submit').attr("disabled", ""); 
        } 
        // Activate the submit button 
        $('.contactForm .submit').removeAttr("disabled"); 
       }, 
       error: function (ob, errStr) { 
        $('#msg').html('There was an error sending your email. Please try again.').addClass('errorMsg'); 
        //Activate the submit button 
        $('.contactForm .submit').removeAttr("disabled"); 
       } 
      }); 
      return false; 
     } 
    }); 
}); 

내가 싶지만 가능하면 처리 될 것으로 보인다 파일 된 .js

<form action="" method="post" class="signup" id="newsletter-form"> 
    <p> 
     <input type="text" name="signup_name" id="signup_name" class="required" value="Your Name" /> 
    </p> 
    <p> 
     <input type="text" name="signup_email" id="signup_email" class="required" value="Your E-mail" /> 
    </p> 
    <input type="submit" value="SEND" class="signupSubmit" id="submitform" /> 
    <div id="newsletter-msg-wrapper" style="position:relative; clear:both; width:100%;"> 
     <div id="newsletter-loader"></div> <span id="newsletter-msg"> &nbsp; </span> 

    </div> 
</form> 

가 그럼 난이 매우 간단합니다 모든 기능 및 내가 여기에 표시되지 않는 내용과이 모든 내용을 CSV 파일에 기록하는 방법에 대해 설명합니다.

사이트와 코드의 전체보기는 여기에서 볼 수 있습니다 :

www.cndnsd.com/ClientAccess/Newmarket/FinalSite/index.html

를 양식이 페이지의 하단에 있습니다.

+0

* "값을 제공하는 방식을 이해할 수 없습니다."* : 알고 싶은 것에 대해 구체적으로 설명하십시오. 나는 누군가가 그 코드의 벽을 통과하고 모든 라인을 설명 할 것이라고 생각하지 않는다. 전반적으로이 질문은 너무 광범위 할 수 있습니다. 이 기능을 구현하지 않을 것입니다. –

+0

뉴스 레터에 가입 한 경우 데이터를 어딘가에 저장해야합니다! 즉 데이터베이스. csv를 만들려면 데이터베이스를 쿼리하고'fputcsv()'를 사용하여 레코드를 반복하여 파일을 만들거나 올바른 헤더가있는 화면에 데이터를 출력하면되므로 강제 다운로드 (필요시 생성됨)가됩니다. – Waygood

+0

@Waygood : 요점은 데이터베이스 대신 CSV 파일에 데이터를 저장하는 것이라고 생각합니다. 사용자가 양식 작성 -> 데이터를 서버로 보냄 -> 데이터는 CSV 파일에 저장됩니다. 이 경우 –

답변

0

myform.php에서 모든 데이터 (전자 메일, 이름 등)를 받고 CSV 파일 작성을 시작하십시오. 그것은 단순한 조작이며 복잡하지 않습니다.

CSV 파일 쓰기를 들어, 스택 오버 플로우에서 이러한 게시물을 확인하시기 바랍니다 :

Creating csv file with php

write into csv file in php

은 또한 일부 인터넷 검색을한다.

이 정보가 도움이되기를 바랍니다.

관련 문제