Как отправить электронное письмо на запрашиваемую страницу 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-запрос на правильный путь