Member 10549697 Ответов: 0

Как отправить электронное письмо на запрашиваемую страницу ajax в C#


Цитата:
В этом коде я передаю значения со страницы а на страницу б с помощью ajax кода


function myFunction(id) {

            var host = window.location.hostname;
            // Create our XMLHttpRequest object
            var hr = new XMLHttpRequest();
            // Create some variables we need to send to our PHP file
            var url = "debtorsAjax.aspx";
            var type = "debtors";

            var vars = "invoice_id=" + id + "&host=" + host+"&type=" + type;
            hr.open("POST", url, true);
            // Set content type header information for sending url encoded variables in the request
            hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
            // Access the onreadystatechange event for the XMLHttpRequest object
            hr.onreadystatechange = function () {
                if (hr.readyState == 4 && hr.status == 200) {
                    var return_data = hr.responseText;
                    document.getElementById("modalBody").innerHTML = return_data;
                }
            }
            // Send the data to PHP now... and wait for response to update the status div
            hr.send(vars); // Actually execute the request
        }


На странице B я беру эти значения и отправляю электронное письмо с помощью SMTP

Цитата:
public bool SendMail()
{
Получить помощь МСГ;
SmtpClient smtp = новый SmtpClient(System.Конфигурация.Конфигурационные настройки.Параметр appsettings.Вам("смтп").Метод toString());
MailAddress fromMail = новый почтовый адрес(System.Конфигурация.Конфигурационные настройки.AppSettings. Get ("FromMailId").Метод toString());

Почтовый адрес toMail = новый адрес электронной почты(сеанс["topersonEmail"].Метод toString());

msg = new MailMessage(fromMail, toMail);
глутамат натрия.IsBodyHtml = true;
msg. Subject = " собрано для ("+Session ["CODE"].Метод toString() + ")";
string strMail = "";
string strSubject = "";

XmlDocument objDoc = новый XmlDocument();
objDoc.Загрузить(Сервер.MapPath("DAL/MailContent.xml"));

XmlNodeList objBody = objDoc.GetElementsByTagName ("PAYMENTCOLLECTION");
strMail = objBody[0].Через свойство innerText;

strMail = strMail. Replace ("#_MailHeader#", "");
strMail = strMail. Replace ("#_MailImage#", mailimage);
строки стрм = strMail.Заменить("#_user#", сессия["sales_person"].Метод toString());

глутамат натрия.Тело = strM;

боол isMailSend = ложь;
пробовать
{
протокол SMTP.Послать(сообщение);

isMailSend = true;
}
поймать (исключение бывший)
{
// getExcecption (ex);
}
возвращение исмаилсенда;
}< / blockqu

Теперь функция почты не работает. хотя он работает на обычной странице c#, но когда я отправляю данные с помощью ajax, он не работает на сервере. на локальном хосте он работает правильно

Что я уже пробовал:

the mail function is not working. although it works on normal c# page but when i'm sending data using ajax it doesn't work on server. on localhost it works properly

sameer549

если он работает в localhost, то он должен работать и на сервере,
проверьте учетные данные вашего сервера
и будьте уверены, попадет ли ajax-запрос на правильный путь

0 Ответов