Salesforce VISUALFORCE/APEX:简单的电子邮件反馈表

Salesforce VISUALFORCE/APEX:简单的电子邮件反馈表,salesforce,apex-code,visualforce,force.com,Salesforce,Apex Code,Visualforce,Force.com,我正在Visualforce中开发一个网站,希望为用户提供一个简单的表单,通过电子邮件向我发送反馈。将有3-4个字段,如姓名、用户电子邮件、原因和反馈以及“发送”按钮。单击“发送”按钮将自动将该消息发送到我的电子邮件地址 我不想在salesforce中存储表单数据,至少现在是这样……我在网上找到的关于visualforce/apex和电子邮件的所有内容都是关于将这些数据保存到salesforce的 我是否可以利用apex的电子邮件功能发送电子邮件,而不将数据存储在salesforce的任何位置

我正在Visualforce中开发一个网站,希望为用户提供一个简单的表单,通过电子邮件向我发送反馈。将有3-4个字段,如姓名、用户电子邮件、原因和反馈以及“发送”按钮。单击“发送”按钮将自动将该消息发送到我的电子邮件地址

我不想在salesforce中存储表单数据,至少现在是这样……我在网上找到的关于visualforce/apex和电子邮件的所有内容都是关于将这些数据保存到salesforce的

我是否可以利用apex的电子邮件功能发送电子邮件,而不将数据存储在salesforce的任何位置

谢谢,
Calvin在VisualForce页面上执行操作时,不需要在数据库中插入/更新/删除任何记录。您可以利用该功能发送通知。对于这种情况,您可能需要熟悉这些方法

下面是一个简单的示例:

public PageReference actionSend() {
    String[] recipients = new String[]{'myemailaddress@somedomain.com'};
    Messaging.reserveSingleEmailCapacity(recipients.size());
    Messaging.SingleEmailMessage msg = new Messaging.SingleEmailMessage();
    msg.setToAddresses(recipients);
    msg.setSubject('Test Email Subject');
    msg.setHtmlBody('Test body including HTML markup');
    msg.setPlainTextBody('Test body excluding HTML markup');
    msg.setSaveAsActivity(false);
    msg.setUseSignature(false);
    Messaging.sendEmail(new Messaging.SingleEmailMessage[] {msg}, false);
    return null;
}

如果您有兴趣从专用电子邮件地址发送这些出站消息(例如noreply@somecompany.com),您可以通过设置->管理设置->电子邮件管理->组织范围的地址菜单设置这些地址。创建组织范围的地址后,从URL中获取Id,并在
Messaging.SingleEmailMessage
实例上使用
setOrgWideEmailAddressId(Id)
方法

谢谢。看来我们可以通过在收件人数组中添加多个收件人来将此邮件发送给多个收件人。我说的对吗?我几乎完成了表格的制作,但没有找到任何方法来更改“发件人”地址。你知道有什么办法可以改变吗?它默认为客户门户/网站的管理员,即我自己。我已更新了我的答案-您正在查找
setOrgWideEmailAddressId
方法。