如何将表单数据发送到CSV [英] How to send form data to CSV

查看:76
本文介绍了如何将表单数据发送到CSV的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个来自客户的特定请求,要求将新闻简报注册发送到CSV文件.对于任何后端,我都不是菜鸟,更不用说前端开发了.

I have a specific request from a client that a newsletter signup be sent to a CSV file. I am a noob when it comes to anything backend, let alone frontend development.

我有一个正在使用的模板,无法理解其传递值的方式.

I have a template that I am working from and can't make sense of the way it delivers the values.

表单代码非常简单

<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>

然后我有一个似乎正在处理帖子的.js文件

Then I have this .js file that seems to be handling the post

$(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;
        }
    });
});

如果可能的话,我很想知道如何使所有功能都起作用,以及我在这里看不到的内容以及如何将所有这些内容写入CSV文件.

If possible I'd love to know how to make this all function and what I am not seeing here and how this all can be written into a CSV file.

可以在此处查看网站和代码的完整视图:

A full view of the site and code can be viewed here:

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

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

该表单位于页面底部.

推荐答案

,接收所有数据(电子邮件,名称等)并开始创建CSV文件.这是一个简单的操作,而不是那么复杂.

in your myform.php , receive all the data (email, name etc) and start creating your CSV file. It is a simple operation and not that complicated.

要编写CSV文件,请在堆栈溢出时查看以下帖子:

For CSV file writing, please check out these posts on stack overflow:

写入php中的csv文件

使用php创建csv文件

也可以进行谷歌搜索.

希望这会对您有所帮助.

Hopefully this will help you.

这篇关于如何将表单数据发送到CSV的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆