2016-09-21 86 views
1

这里谈到的HTML代码存储PDF文件

<input type="text" class="txtbox" placeholder="Name" id="name" name="name" /> 
<input type="text" class="txtbox" placeholder="E-mail"id="email" name="email" /> 
<input type="text" class="txtbox" placeholder="Phone" id="phone" name="phone" /> 
<input type="file" class="txtbox" name="file" id="resume"> 
<input name="submit" id="submitbutton1" value="Apply Now" type="button" onClick="submitbutton1()" class="txtbox"> 

和我的JS功能如下

<script> 
function submitbutton1() 
{ 
    console.log("here"); 
    var name=$("#name").val(); 
    console.log(name); 
    var email=$("#email").val(); 
    console.log(email); 
    var phone=$("#phone").val(); 
    console.log(phone); 
    var tal={"name":name,"email":email,"phone": phone}; 
    $.ajax({ 
    type: "POST", 
    url: "email.php", 
    data: tal,  
    success: function(ch) 
    {  
    console.log(ch); 
    } 
}); 
} 
</script> 

我想该PDF文件的值保存到一个js变量以便我可以将所有这些变量发布到email.php中是否可以将pdf文件存储在js变量中?如果有可能如何?请帮助我...

回答

0

我编辑了你的脚本。

<script> 
function submitbutton1() 
{ 
    console.log("here"); 
    var name=$("#name").val(); 
    console.log(name); 
    var email=$("#email").val(); 
    console.log(email); 
    var phone=$("#phone").val(); 
    console.log(phone); 
var resume=$("#resume").val(); 
    var tal={"name":name,"email":email,"phone": phone,"resume":resume}; 
    $.ajax({ 
    type: "POST", 
    url: "email.php", 
    data: tal,  
    success: function(ch) 
    {  
    console.log(ch); 
    } 
}); 
} 
</script> 
0
  1. 你可以将PDF值存储您的js变量里面,如果你有这样的价值。您可以使用ajax调用来从您的服务器加载PDF文档。但是,它将是二进制数据,您将无法在浏览器中将其显示到您的客户端。

  2. 您可以将此值发布到服务器,但它没有任何意义,因为您只能发布此文件的路径,并使用一些服务器端编程语言函数(您的案例中的file_get_contents)获取此文件的内容。

  3. 将二进制数据作为电子邮件内容发送是没有意义的,因此您应该将它作为附件发送。不知道,是否可以使用php mail()函数发送附件,以前我只用phpmailer来完成。 PHP邮件程序不需要你的二进制数据,它只需要文件路径。

0

我想你必须用ajax上传PDF文件并使用一个ajax请求将数据发布到ajax中。您可以使用FormData()对象的帖子文件和数据值均为

function submitbutton1() { 
    var file_data = $('#resume').prop('files')[0]; 
    var form_data = new FormData();     
    form_data.append('file', file_data); 
    form_data.append('name', $("#name").val()); 
    form_data.append('email', $("#email").val()); 
    form_data.append('phone', $("#phone").val()); 
    $.ajax({ 
     url: 'email.php', 
     cache: false, 
     data: form_data,       
     type: 'post', 
     success: function(result){ 
      console.log(result); 
     } 
    }); 
};