Php 单一html格式电子邮件发送,同时发布csv
我正在提交带有php代码的HTML表单,用于发送电子邮件。我需要的是在发送电子邮件的同时,在csv文件中更新详细信息(同时使用单个提交按钮)。发送电子邮件的PHP代码是:Php 单一html格式电子邮件发送,同时发布csv,php,html,email,csv,Php,Html,Email,Csv,我正在提交带有php代码的HTML表单,用于发送电子邮件。我需要的是在发送电子邮件的同时,在csv文件中更新详细信息(同时使用单个提交按钮)。发送电子邮件的PHP代码是: <?php if(!isset($_POST['submit'])) { header('Location: error.html'); exit; } $name = $_POST['name']; $place = $
<?php
if(!isset($_POST['submit']))
{
header('Location: error.html');
exit;
}
$name = $_POST['name'];
$place = $_POST['place'];
$email = $_POST['email'];
$message = $_POST['message'];
$email_body =
"NAME: $name\n".
"PLACE: $place\n".
"EMAIL-ID: $email\n\n".
"Message: $message\n" ;
$to = "to@xyz.com";
//Send the email!
mail($to, $email_body);
//done
header('Location: thank.html');
?>
任何人都可以指导我更正代码。函数fputcsv()的第一个参数是文件句柄,第二个参数是数组,请尝试以下操作:
<?php
if(!isset($_POST['submit']))
{
header('Location: error.html');
exit;
}
$name = $_POST['name'];
$place = $_POST['place'];
$email = $_POST['email'];
$message = $_POST['message'];
$email_body = "NAME: $name\n".
"PLACE: $place\n".
"EMAIL-ID: $email\n\n".
"Message: $message\n";
$to = "to@xyz.com";
//Send the email!
mail($to, "My Subject", $email_body);
$fp = fopen("datacsv.csv", "a+");
fputcsv($fp, array($name, $place, $email, $message));
fclose($fp);
//done
header('Location: thank.html');
?>
确保在header()函数之前添加代码。此外,检查文件datacsv.csv上的权限是否正确。要添加的csv文件名应在哪里“$fp=fopen(“datacsv.csv”,“a+””)很抱歉,我不理解你的问题…不管怎样,我更改了我的代码,使之成为你必须添加到.php文件的方式。至于.csv文件,如果它不存在,php将在与.php文件相同的目录中创建它(a+模式)。根据php文档,mail()函数有三个必需参数(),因此我还将缺少的一个(主题)添加到代码中。请立即进行测试。如果仍然不起作用,请尝试注释mail()行以检查文件是否已创建。
<?php
if(!isset($_POST['submit']))
{
header('Location: error.html');
exit;
}
$name = $_POST['name'];
$place = $_POST['place'];
$email = $_POST['email'];
$message = $_POST['message'];
$email_body = "NAME: $name\n".
"PLACE: $place\n".
"EMAIL-ID: $email\n\n".
"Message: $message\n";
$to = "to@xyz.com";
//Send the email!
mail($to, "My Subject", $email_body);
$fp = fopen("datacsv.csv", "a+");
fputcsv($fp, array($name, $place, $email, $message));
fclose($fp);
//done
header('Location: thank.html');
?>