我的网站是PHP网站。 我的网站与本地主机运行良好。 Ngrok服务器也没有问题, 但我将其部署在 dash.infinity.com 中。 当然,没有任何错误, 但网站运行不佳。 我使用重新发送 API 作为电子邮件 API,发生内部服务器错误 500。 请帮我。 我的代码如下。 这是ajax部分。
function finish_exam() {
$("#ring").addClass("ring");
$("#ring").html('Saving');
$("#loading").addClass("loading");
$('body').css('background-color', '#959566');
// var question_array = [];
// console.log(q.length);
// console.log(q)
// console.log(question_array);
// console.log(question_array);
// console.log(data);
$.post('test_insert.php', {
email: "<?= $email ?>",
title_arr: array2json(title_arr),
answer_arr: array2json(answer_arr),
q: array2json(q),
name_arr: array2json(name_arr),
all_answer_arr: array2json(all_answer_arr),
question_type: array2json(question_type),
// data: data
},
function (returnedData) {
if (returnedData) {
console.log(returnedData);
let answer = JSON.parse(returnedData);
if(answer.flag == "success") {
exam_number = answer.exam_no;
$("#ring").removeClass("ring");
$("#ring").html('');
$("#loading").removeClass("loading");
$('body').css('background-color', '#ffffcc');
// $("#export_btn").removeAttr('disabled');
$.post('gmail_api.php', {
email:"<?= $email ?>"
}, function (returnedData) {
if(returnedData) {
console.log(returnedData)
alert("Survey completed, no further action is necessary on your part.");
}
} )
}
}
}).fail(function () {
console.log("error");
});
}
这是 PHP 部分:
<?php
require_once 'vendor/autoload.php';
$email = $_REQUEST['email'];
try {
// Initialize the Resend client
$resend = Resend::client('re_SN6U9cej_iLHNvbmjwgGCQEjyCQqiKtsL');
// Prepare the email data
$emailData = [
'from' => 'Survey Notification <[email protected]>',
'to' => ['[email protected]'],
'subject' => 'Survey project notification',
'text' => $email . ' sucessfully completed their survey.',
'attachments' => [
// [
// 'filename' => 'invoice.pdf',
// 'content' => $invoiceBuffer
// ]
],
'headers' => [
// 'X-Entity-Ref-ID' => '123456789',
],
'tags' => [
// [
// 'name' => 'category',
// 'value' => 'confirm_email',
// ],
],
];
// Send the email
$resend->emails->send($emailData);
echo "success";
} catch (Exception $e) {
echo "An error occurred: " . $e->getMessage();
}
?>
据我所知,代码没有问题。 我认为 Resend API 服务器不接受我的域。 怎么解决呢? 或者部署我的网站时是否有其他电子邮件 API 没有错误?
500 内部服务错误
我找到原因了。 我的 php 网站支持 php 版本 8.2。 但我的托管网站支持 php 版本 7.4。 这是有原因的。 谢谢您的宝贵时间。