PHP:结合表单提交和文件上传

时间:2013-10-05 20:17:13

标签: php html forms upload submit

我有一个在线表单,我使用以下PHP代码提交。 这很好用,并根据需要创建一个包含提交数据的电子邮件。

现在我在表单中添加了一个简单的文件上传按钮,并将enctype="multipart/form-data"添加到表单标记,并尝试在同一个PHP页面上传文件。 不幸的是,这不起作用,但是当我在单独的表单上测试文件上传时它工作正常,所以我假设我没有使用正确的代码来获取文件数据。

到目前为止,我在会话开始后的代码行中有以下代码。 有没有办法我可以成功地组合它,以便它提交表单数据并同时上传文件? (我不需要附加到电子邮件的文件,如果它被上传到服务器就足够了)。

<?php
session_start();
move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], "uploads/" . $_FILES["fileToUpload"]["name"]);

$varSender = $_SESSION['email'];
require_once('class.email.php');

$message="<span style='font-family: Arial, Helvetica, Sans-Serif; font-size:11pt; color: #00457c;'>";
$message.="Email from:&nbsp;&nbsp;" . $_SESSION['email'] . " - ID: " . $_POST['EID'] . "<br /><br />";
$message.="<strong>User name:</strong>&nbsp;&nbsp;" . htmlentities($_POST['userName']) . "<br />";
$message.="<strong>Line 1:</strong>&nbsp;&nbsp;" . $_POST['line1'] . "<br />";
$message.="<strong>Line 2:</strong>&nbsp;&nbsp;" . $_POST['line2'] . "<br />";
$message.="<strong>Line 3:</strong>&nbsp;&nbsp;" . $_POST['line3'] . "<br />";
$message.="<strong>Details:</strong>&nbsp;&nbsp;<br />";
$message.="" . $_POST['details'] . "<br />";
$message.="</span>";

$objMail= new SendMail;
$objMail -> setTo($varSender)
 -> setTo($_POST['recipient'])
 -> setFrom('"Web Mail" <XXX@company.com>')
 -> setSubject('Web Request - ' . date('Y-m-d') . ' - ' . htmlentities($_POST['userName']))
 -> sendHTMLEmail($message);

echo "<strong>Thank you for your request.</strong><br /><br />";
echo "Your email has been submitted successfully - your ID is: <strong>" . $_POST['EID'] . "</strong>.<br />";
echo "<a href='javascript:window.close();'>Close Window</a><br />";
?>

0 个答案:

没有答案