*.bat文件解决了问题,并通过任务计划程序启动。最初,我将批处理文件指向错误的目录,这就是为什么某些功能无法正常工作的原因。我的下一步是清理我的代码,并使用base64和html美化邮件。
php C:\Apache_Directory\htdocs\my_phpscript.php
我的脚本...是的,我知道它不是很干净/完美,还有很多工作要做,但现在它正在做我需要它做的事情:
<?php
$sql1 = "USE database_name";
$sql2 = "TRUNCATE TABLE my_table";
$sql3 = "LOAD DATA LOCAL INFILE 'DataImport//import_file.csv'
REPLACE INTO TABLE my_table
CHARACTER SET latin1
FIELDS TERMINATED BY ','
IGNORE 1 LINES
(`record_number`
, `module_name`
, `action_date`
, `location`
, `type_of_outlet`
, `user_name`
, `store_code`
, `outlet_name`
, `line_question`
, `line_field_id`
, `line_value`
, `brand_code`
, `brand`);";
$con=mysqli_connect("localhost","root","mysqlpassword","database");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
};
$result1 = mysqli_query($con, $sql1);
$result2 = mysqli_query($con, $sql2);
$result3 = mysqli_query($con, $sql3);
if (mysqli_affected_rows($con) > 1) {
$message ="". mysqli_affected_rows($con). " rows were successfully added to the my_table table!";
} else {
$message = "" . mysqli_error($con). "has caused the update to fail";
};
echo $message;
require("PHPMailerAutoload.php");
require("class.phpmailer.php");
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: Name1 <name1@domain.co.za>, Name2<name2@domain.co.za>' . "\r\n";
$headers .= 'From: Report Server <ReportServer@domain.co.za>' . "\r\n";
$subject = 'Data Import Resultt' ."\r\n";
$mail = new PHPMailer();
$mail->IsSMTP(true);
$mail->Mailer = "smtp";
$mail->Host = "smtp.host.co.za";
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'tls';
$mail->Username = "username@domain.co.za";
$mail->Password = "password";
$mail->CharSet = "UTF-8";
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$mail->From = 'reportserver@domain.co.za';
$mail->FromName = 'Reports Server';
$mail->AddAddress('name1@domain.co.za', 'Name1');
$mail->AddAddress('name2@domain.co.za', 'Name2');
$mail->AddAddress('name3@domain.co.za', 'Name3');
$mail->Subject = $subject;
$mail->Body = $message."\r\n";
$mail->WordWrap = 50;
if(!$mail->Send()) {
echo 'Message was not sent.';
echo 'Mailer error: ' . $mail->ErrorInfo;
exit;
} else {
echo 'Message has been sent.';
}
mysqli_close($con);
?>
curl
、wget
或fetch
这样的工具从命令行“调用”一个网页,那么你也可以安排该命令来实现相应功能。 - Tigger