odeslání formuláře na email   otázka

VB.NET, .NET

Ahoj všem!

Prosím o radu - mám vytvořený jednoduchý kontaktní formulář (jméno s textovým polem, příjmení s text polem, adresu, psč, email atd.) a chtěl bych to všechno poslat na můj mejl - jak se to dělá? Poslat klasický email zvládnu, mám tohle:

Imports System.Net.Mail

Partial Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Wizard1_FinishButtonClick(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.WizardNavigationEventArgs) Handles Wizard1.FinishButtonClick
        SendMail(txtEmail.Text, txtJmeno.Text, txtPrijmeni.Text, txtMesto.Text)
    End Sub
    Private Sub SendMail(ByVal from As String, ByVal jmeno As String, ByVal prijmeni As String, ByVal mesto As String)
        Dim mailServerName As String = "smtp.email.com"
        Dim message As MailMessage = New MailMessage(from, "[email protected]", "formular", jmeno)
        Dim mailClient As SmtpClient = New SmtpClient

        mailClient.EnableSsl = True
        mailClient.Host = mailServerName
        mailClient.UseDefaultCredentials = False
        mailClient.Credentials = New System.Net.NetworkCredential("[email protected]", "heslo")
        mailClient.Send(message)
        message.Dispose()
    End Sub
End Class

Poradí někdo jak tohle upravit, abych odeslal celý formulář? Nebo se to dělá jinak?

Děkuju za rady a názory.

Dave

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Vždyť to víceméně máte hotové - stačí do 4. parametru na řídku, kde se vytváří nová MailMessage, vložit text zprávy. Prostě si z těch parametrů jmeno, prijmeni atd. poskládejte nějakou rozumnou textovou reprezentaci a máte hotovo.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Díky za popostrčení kupředu.

Máte namysli tento řádek?

Dim message As MailMessage = New MailMessage(from, "[email protected]", "orderform", jmeno)

Ale do nové MailMessage můžu vložit jen 4 parametry... místo jmeno bych chtěl mít to, co mi uživatel napíše do textových polí všech parametrů, tj. jméno, příjmení, město atd.

Nějak na to pořád nemůžu přijít...

nahlásit spamnahlásit spam 0 odpovědětodpovědět

message.Body = "Pozdrav z Emailu"

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Opět zdravím!

Pořád se mi odesílá na email jen jeden parametr - buď jmeno, nebo mesto, nebo prijmeni atd., ale já chci všechny najednou v jednom mejlu...poraďte, pls, jak nacpu všechny ty parametry do jednoho message.Body?

Díky moc

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Nastudujte si základy jazyka Visual Basic nebo C#, pokud ani nevíte, jak sloučit řetězce, což je naprosto základní znalost, nemá smysl snažit se programovat webové aplikace.

Návodů na tomto webu máme dost, můžete začít v sekci Začínáme.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ale ta funkce má 4 parametry a vy jich tam prostě víc nenacpete. Parametr message body je jeden a tak to taky zůstane i kdyby jste se rozkrájel. A taky jich víc není potřeba. Vy si pěkně sloučíte všechny texty z formuláře do jednoho řetězce, odešlete celý řetězec jako jeden parametr a na druhé straně zase ten jeden dlouhý řetězec rozparsujete do původní podoby...

Nebo si vždycky vytvořte texťák, do něj vložte ty texty a pošlete ho jako přílohu, nebudete muset nic parsovat (i když po přečtení seriálu pro začátečníky by to neměl být problém).

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback