Avatar billede mikkel251 Seniormester
02. oktober 2016 - 21:34 Der er 7 kommentarer og
1 løsning

den vil ikke sende email fra min kontaktformular

Hej eksperter.
jeg har en kontaktformular på min hjemmeside og den vil gerne sende en besked i backend om at der er en ny besked min den vil ikke sende mig en mail på det, jeg kan ikke lige se hvad der er forkert i min kode, den virker fint i local host men når så min side er loadet op så virker den ikke jeg har prøvet med en anden port, det kunne jeg læse der var andre der havde prøvet men det virkede ikke.
i kan selv prøve her, der går 10 sec før siden reloader så er der lidt tid til at se fejlen
http://www.web17.dk/kontakt.aspx

koden i min send knap
kontaktFac objKontakt = new kontaktFac();
        if (!string.IsNullOrEmpty(txtNavn.Text) && !string.IsNullOrEmpty(txtEmail.Text) && !string.IsNullOrEmpty(txtEmne.Text) && !string.IsNullOrEmpty(txtBesked.Text))
        {
            objKontakt._navn = txtNavn.Text;
            objKontakt._email = txtEmail.Text;
            objKontakt._emne = txtEmne.Text;
            objKontakt._besked = txtBesked.Text;
            objKontakt.NyKontaktBesked();
            //DEN SENDER VIA GMAIL
            SmtpClient client = new SmtpClient();
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.EnableSsl = true;
            client.Host = "smtp.gmail.com";
            client.Port = 587;

            //SMTP authentication
            System.Net.NetworkCredential credential = new System.Net.NetworkCredential("mikk251@gmail.com", "xxxxxxxxxxxxxxxxx");
            client.UseDefaultCredentials = false;
            client.Credentials = credential;

            MailMessage msg = new MailMessage();
            msg.From = (new MailAddress(txtEmail.Text, txtNavn.Text));
            msg.To.Add(new MailAddress("mikk251@gmail.com"));
            msg.Subject = "Så er der en ny besked";
            msg.IsBodyHtml = true;
            msg.Body = String.Format("<Html><Header></Header><body>" + txtNavn.Text + "<br /> " + txtBesked.Text + "</body></html>");

            try
            {
                client.Send(msg);

                litError.Text = "<h4 style='color: green;'>Tak for din henvendelse. Vi svare tilbage så hurtigt som muligt!</h4>";
            }
            catch (Exception ex)
            {
                litError.Text = "Der skete desvære en fejl ved afsendelsen. " + ex.Message;
            }
            Response.AddHeader("REFRESH", "10;URL=" + Request.RawUrl + "");
            //SÅ TØMMES FELTERNE
            txtNavn.Text = "";
            txtEmail.Text = "";
            txtEmne.Text = "";
            txtBesked.Text = "";
        }
        else
        {
            litError.Text = "<br /><p>Du skal udfylde alle felterne</p>";
        }
Avatar billede arne_v Ekspert
03. oktober 2016 - 04:24 #1
Tillader web17 udgaaende connections?
Avatar billede mikkel251 Seniormester
03. oktober 2016 - 06:40 #2
Hvordan finder jeg ud af det?
Avatar billede arne_v Ekspert
03. oktober 2016 - 18:09 #3
Spoerg hosting firma eller proev med en simpel socket connection hvor du catcher og displayer fejl.
Avatar billede arne_v Ekspert
21. oktober 2016 - 21:07 #4
Det var problemet?
Avatar billede mikkel251 Seniormester
21. oktober 2016 - 21:34 #5
Jeg har været lidt stresset de sidste par dage, så fik nok trykket lidt for hurtigt
Min lære gav mig koden til unoeuro og den skal jeg nok ligge op en af dagene så i kan se min løsning ??
Avatar billede mikkel251 Seniormester
01. november 2016 - 19:20 #6
det tog lidt tid, men nu fik jeg endelig tid til skrive herinde igen.

her er den kode jeg brugte som virker, her får jeg en mail hvergang en skriver til mig i min kontakt formular, udskyld for ventetiden :(

kontaktFac objKontakt = new kontaktFac();
        if (!string.IsNullOrEmpty(txtNavn.Text) && !string.IsNullOrEmpty(txtEmail.Text) && !string.IsNullOrEmpty(txtEmne.Text) && !string.IsNullOrEmpty(txtBesked.Text))
        {
            objKontakt._navn = txtNavn.Text;
            objKontakt._email = txtEmail.Text;
            objKontakt._emne = txtEmne.Text;
            objKontakt._besked = txtBesked.Text;
            objKontakt.NyKontaktBesked();

            SmtpClient client = new SmtpClient();
            client.EnableSsl = false;
            client.Host = "smtp.unoeuro.com";
            client.Port = 25;
            System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("", "");



            ////DEN SENDER VIA GMAIL
            //SmtpClient client = new SmtpClient();
            //client.DeliveryMethod = SmtpDeliveryMethod.Network;
            //client.EnableSsl = false;
            //client.Host = "asmtp.unoeuro.com";
            //client.Port = 587;

            ////SMTP authentication
            //System.Net.NetworkCredential credential = new System.Net.NetworkCredential("admin@web17.dk", "kode");
            client.UseDefaultCredentials = false;
            //client.Credentials = credential;

            MailMessage msg = new MailMessage();
            msg.From = (new MailAddress(txtEmail.Text, txtNavn.Text));
            msg.To.Add(new MailAddress("mikk251@gmail.com"));
            msg.Subject = "Så er der en ny besked på web 17";
            msg.IsBodyHtml = true;
            msg.Body = String.Format("<Html><Header></Header><body>" + txtNavn.Text + "<br /> " + txtBesked.Text + "</body></html>");

            try
            {
                client.Send(msg);

                litError.Text = "<h4 style='color: green;'>Tak for din henvendelse. Jeg vil svarer tilbage hurtigst muligt!</h4>";
            }
            catch (Exception ex)
            {
                litError.Text = "Der skete desvære en fejl ved afsendelsen. " + ex.Message;
            }
            Response.AddHeader("REFRESH", "3;URL=" + Request.RawUrl + "");
            //SÅ TØMMES FELTERNE
            txtNavn.Text = "";
            txtEmail.Text = "";
            txtEmne.Text = "";
            txtBesked.Text = "";
        }
        else
        {
            litError.Text = "<br /><p>Du skal udfylde alle felterne</p>";
        }
Avatar billede arne_v Ekspert
02. november 2016 - 01:56 #7
Og hvad er forskellen?
Avatar billede mikkel251 Seniormester
02. november 2016 - 09:04 #8
forskellen er ikke den store i min kode men her er de 2 bider som er forskellen på de 2 koder jeg har lagt op, jeg er ikke ekspert, men det virkede for mig :D
før brugte jeg den her til google mailen

        client.EnableSsl = true;
            client.Host = "smtp.gmail.com";
            client.Port = 587;

og den som virkede for mig i koden var denne her

  client.EnableSsl = false;
            client.Host = "smtp.unoeuro.com";
            client.Port = 25;
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester