我知道这是一个非常普遍的问题,但我需要制作一个在线时间卡。需要一个文件上传字段。我知道我需要在html端输入,但之后不知道该做什么。我曾经使用和发送了php电子邮件,但从来没有与文件上传。因此,我基本上需要知道从哪里开始(如何编写php电子邮件发送部分),.I将非常感谢一个非常简单的解释,任何帮助都是非常感谢的。
此外,我需要它发送到电子邮件,雇员名单。但我知道这部分很简单。
我有一个实时链接,我的客户目前正在使用,他们希望我添加一个文件上传。如果你有什么问题请回答。
<?php
if (isset($_POST['submit'])) {
//email varible above to for order of operations reasons
$email = $_POST['email'];
$to = "example@123.com, $email";
$subject = "New TimeSheet";
$name = $_POST['employee'];
$date = $_POST['date'];
$jobnum = $_POST['job#'];
$radio = $_POST['radiobtn'];
$customer = $_POST['customer'];
$address = $_POST['location'];
$jobdes = $_POST['jobdescription'];
$starttime = strtotime($_POST['starttime']);
$lunchtime = $_POST['lunch'];
$stoptime = strtotime($_POST['stoptime']);
$totalhours = $_POST['totalhours'];
$drivetime = $_POST['drivetime'];
$notes = $_POST['notes'];
$m1 = $_POST['m-1'];
$m2 = $_POST['m-2'];
$m3 = $_POST['m-3'];
$m4 = $_POST['m-4'];
$m5 = $_POST['m-5'];
$m6 = $_POST['m-6'];
$m7 = $_POST['m-7'];
$q1 = $_POST['q-1'];
$q2 = $_POST['q-2'];
$q3 = $_POST['q-3'];
$q4 = $_POST['q-4'];
$q5 = $_POST['q-5'];
$q6 = $_POST['q-6'];
$q7 = $_POST['q-7'];
$e1 = $_POST['e-1'];
$e2 = $_POST['e-2'];
$e3 = $_POST['e-3'];
$e4 = $_POST['e-4'];
$e5 = $_POST['e-5'];
$e6 = $_POST['e-6'];
$e7 = $_POST['e-7'];
$t1 = $_POST['t-1'];
$t2 = $_POST['t-2'];
$t3 = $_POST['t-3'];
$t4 = $_POST['t-4'];
$t5 = $_POST['t-5'];
$t6 = $_POST['t-6'];
$t7 = $_POST['t-7'];
$message = "<html><body>";
$message .= '<table rules="all" style="border-color: #666;"
cellpadding="10">';
$message .= "<tr><td><strong>Tech Name:</strong> </td><td>" .$name. "</td></tr>";
$message .= "<tr><td><strong>Job #:</strong> </td><td>" .$jobnum. "</td></tr>";
$message .= "<tr><td><strong>Date:</strong> </td><td>" . $date . "</td></tr>";
$message .= "<tr><td><strong>Start Time:</strong> </td><td>" . date('h:i a', $starttime) . "</td></tr>";
$message .= "<tr><td><strong>Lunch Duration:</strong> </td><td>" . $lunchtime . "</td></tr>";
$message .= "<tr><td><strong>Stop Time:</strong> </td><td>" . date('h:i a', $stoptime) . "</td></tr>";
$message .= "<tr><td><strong>Total Hours:</strong> </td><td>" . $totalhours . "</td></tr>";
$message .= "<tr><td><strong>Drive Time:</strong> </td><td>" . $drivetime . "</td></tr>";
$message .= "<tr><td><strong>Job Complete:</strong> </td><td>" . $radio . "</td></tr>";
$message .= "<tr><td><strong>Customer:</strong> </td><td>" . $customer . "</td></tr>";
$message .= "<tr><td><strong>Location/Address:</strong> </td><td>" . $address . "</td></tr>";
$message .= "<tr><td><strong>Job Description:</strong> </td><td>" . $jobdes . "</td></tr>";
$message .= "<tr><td><strong>Notes:</strong> </td><td>" . $notes . "</td></tr>";
$message .= "<tr><td><strong>FILE:</strong> </td><td>" . $file . "</td></tr>";
$message .= "<tr><td><strong>Materials:</strong></td> <td><strong>Qty:</strong></td> <td><strong>Each:</strong></td> <td><strong>Total:</strong></td></tr>";
$message .= "<tr><td>$m1</td><td>$q1</td><td>$e1</td><td>$t1</td>";
$message .= "<tr><td>$m2</td><td>$q2</td><td>$e2</td><td>$t2</td>";
$message .= "<tr><td>$m3</td><td>$q3</td><td>$e3</td><td>$t3</td>";
$message .= "<tr><td>$m4</td><td>$q4</td><td>$e4</td><td>$t4</td>";
$message .= "<tr><td>$m5</td><td>$q5</td><td>$e5</td><td>$t5</td>";
$message .= "<tr><td>$m6</td><td>$q6</td><td>$e6</td><td>$t6</td>";
$message .= "<tr><td>$m7</td><td>$q7</td><td>$e7</td><td>$t7</td>";
$message .= "</table>";
$message .= "</body></html>";
// Always set content-type when sending HTML email
$headers = "From: forms@gradyelectricforms.com\r\n";
$headers .= "Content-Type: text/html";
$file = $_POST['fileupload'];
mail( $to, $subject, $message, $headers );
header("location: http://www.gradyelectricinc.com", true, 301 ); exit;
}
?>发布于 2019-02-19 01:48:59
听起来你想要的是创建一个包含客户信息输入的html表单,包括他们将要上传的表单。不确定你是否打算发送同样的(pdf?)把文件提交给提交表格的人,那部分我不清楚。
对于电子邮件发送,我建议使用Sendgrid或Mailgun,这些都是SMTP服务,因此您不必使用自己的服务器发送电子邮件。许多主机提供商,如谷歌,禁止从他们的服务器发送SMTP,因此有必要使用第三方。
按照这些思路,我建议使用Sendgrid文档并直接从它们中获取PHP代码。他们有一个用于发送邮件的Github库,下面是示例。
要通过PHP上传表单,您还可以使用搜索github寻找一些有用的项目。这样你就可以有一个起点了。
我希望这能给你一些开始的机会。
https://stackoverflow.com/questions/54757673
复制相似问题