2012-02-09 143 views
0

我正在一个PHP表单提交。表单在一个html文件中,方法是submit.php。该领域是 -
1名(文本)
2.手机(文本)
3.电子邮件(测试)
4. CV(文件)
5.评论(文本域)jquery ajax表单提交和电子邮件附件

我使用jQuery表单验证插件(bassistance.de)和jQuery表单插件(jquery.malsup.com/form)。我希望表单使用ajax和电子邮件地址提交。我已经成功完成了。但问题是文件。我无法理解这个程序。是文件必须首先上传到服务器,然后作为附件发送?或者它可以从客户端的PC发送附件文件?我对此很困惑。请帮我解释一下。此外,如果文件必须上传,那么ajax上传的例子将非常有帮助。当ajax提交表单时,我无法上传文件。

+0

所以这个过程是 - 观众看的形式,完成它,选择从PC上的文件和附件发送。该PHP文件将发送附件的电子邮件。上传不需要。你能举个例子吗? – 2012-02-09 07:13:26

回答

1

您必须让用户上传文件,然后将其附加到电子邮件。

  1. 一旦用户提交表单名称(文本)
  2. 电话(文本)
  3. 电子邮件(测试)
  4. CV(文件)
  5. 评论(文本域)

你你必须得到文件(CV)请注意,默认的AJAX POST不支持文件。所以你必须使用某种隐藏的iframe POST技术,因为你也在上传文件。一旦文件上传到服务器。您可以将它附加到您的邮件并通过PHP发送。

有几个jQuery插件也可用于此。如果你喜欢插件,你可以使用它们。

http://viralpatel.net/blogs/2008/11/ajax-style-file-uploading-using-hidden-iframe.html

+0

我也读过关于“隐藏的iframe帖子”的东西。你能举个例子吗? – 2012-02-09 07:20:10

+0

我编辑了我的答案。请看最后几行。 – 2012-02-09 07:21:10

0

不要重新发明轮子...

我会通过uploadify插件上传的文件 - http://www.uploadify.com/。它就像Gmail一样,看起来很脆。
在上传文件时,只需禁用提交按钮或进行一些验证,以防止在没有文件的情况下提交。

下图介绍如何实现下载:

alt text