*   >> Lese Utdanning Artikler >> tech >> web development

Sende Web Form datasett som e-post med Activeperl

Sende e-post med ActivePerl - Del 2 Innledning Dette er del 2 av min serie, sende e-post med ActivePerl. I denne delen av serien ser vi hvordan du sender webskjema datasett som e-post. En Internett-bruker kan skrive inn informasjon i et HTML-skjema (web), og klikk deretter på Send-knappen. Denne informasjonen kan bli sendt som e-post til en e-boksen. Når informasjonen på nettleseren til brukeren er godt utformet, er det som kalles et datasett. Vel forming her betyr at hver skjemakontroll bør ha et navn og en verdi.

Når brukeren klikker på send-knappen, er datasettet først sendt til webserveren som holder HTML form og sitt nettsted. På web server er det et script (i vårt tilfelle, et Perl script) som ville konvertere dataene satt inn i en e-post og deretter sende den til målet e-postserveren. Du burde ha lest den første delen av denne serien før du leser dette. Merk: Hvis du ikke kan se koden, eller hvis du tror noe mangler (ødelagt kobling, bilde fraværende), bare kontakte meg på [email protected]. Det er, kontakt meg for den minste problemet du har om hva du leser.

Alt sagt i denne artikkelen gjelder for tradisjonelle Perl. Men med tradisjonelle Perl du har å gå foran koden din med noe sånt, #! /Usr /bin /perl. Du trenger grunnleggende kunnskaper i HTML (eller XHTML) og ActivePerl (Perl) for å forstå denne artikkelen. Hvis du ikke har grunnleggende kunnskaper i HTML så les den serien jeg skrev tittelen, XHTML Basics. For å komme frem til serien, skriver tittel og navnet mitt Chrys i søkeboksen på denne siden og klikk Søk.

Eksempel Email vurdere følgende Perl epost klar til å sende fra et nettsted server: open (sendmail, "| /usr /lib /sendmail -oi -t") or die "Kan ikke gaffel for sendmail: $ \\ n"; skrive ut Sendmail Fra: Til: Emne: Illustrasjon Dato: Fre, 21 nov 2010 09:55:00 -0000 fornavn: John Second Navn: Smith Melding: Kjære Madame, er ett avsnitt fra synspunkt av den ovenfor hilsenen linje lekmann, fordi en blank linje følger den. Dette er den tredje ledd fra lekmann synspunkt og ingen linje her bør være lengre enn 78 tegn inkludert mellomrom.

De tre første linjene i kroppen av denne meldingen danner også et avsnitt fra det synspunkt av legmannen. Ingen linje i meldingshodet delen skal også være lengre enn 78 tegn. I kroppen av en e-post de avsnittene av lekmann er atskilt med blanke linjer. For å oppnå et avsnitt (for lekmann), skriver enter-tasten to ganger straks du har fullført den siste linjen i forrige avsnitt. Følgende to lesbare linjer av denne e-posten danne et avsnitt.

Vennlig hilsen, John Smith EOF nær (sendmail) eller advare "sendmail ikke lukke riktig"; Et HTML-skjema Informasjonen i kroppen av e-postmeldingen ovenfor kan fylles i en web (HTML) form som skal sendes via e-post. For at e-mottakeren (human) for å svare webskjema informasjonen, skal webskjema har et felt for å fylle inn din e-postadresse. Svaret vil gå til din e-boksen, og ikke til webserveren som er vert for webskjema og sitt nettsted. Svaret vil ikke gå til webserveren din selv om din e Perl-skript er i webserveren.

For at informasjonen til å gå til mottakerens e-boksen, har hans e-postadresse også å være i webskjema. Dette er vanligvis hardkodet i skjult input type kontroll i webskjema. Skjema for ovennevnte e-post er som følger: Form Overskrift her product: * Fornavn: Etternavn: * E-post: Emne: Melding: Send Verdien av handlingen attributt er aperlscript.pl. Dette er navnet på Perl filen skript som vil motta datasettet fra brukerens nettleser, konvertere den til en epost og sende e-post til e-postserveren. Du kan gi det navnet du ønsker på filen, men ender det med utvidelsen, PL.

For et datasett, er navnet på en skjemakontroll og dens verdi sendes når på send-knappen klikkes. Så sørg for at hver av de viktige kontroller av skjemaet har et navn. En kontroll navn, for eksempel "fornavn" kan være viktig tekst i selve e-postmeldingen. Legg merke til at bare brukeren skriver fornavnet hans og han ikke skriver strengen, "fornavn". Denne strengen er navnet på et styrings og bør være viktig tekst i selve meldingen.

Nettopp, vil kroppen av meldingen har, fornavn: John Her er strengen "fornavn" kommer fra navnet på en skjemakontroll, mens "John" er verdien skrevet i feltet kontrollens. Form kontrollkode I skjemaet kode, har den skjulte inngangskontroll e-postadressen til den e-boksen til personen som skal motta e-posten. Skjulte inngangskontroll vises ikke når webskjema vises. Du har tre innspill tekst kontroller i form av kode. I motsetning til med den skjulte kontroll, vil disse tekst kontrollene bli fylt av internettbrukeren på hans klient nettleser.

Han må fylle hans fornavn, må han fylle hans etternavn og han har til å fylle sin e-postadresse for å få et svar. Navnet på den første input tekstkontroll er, "fornavn"; navnet på den andre innspill teksten kontrollen er "etternavn"; og navnet på den siste innspill teksten kontrollen er "E-post". Brukeren vil skrive sin e-postadresse i e-post innspill tekst kontroll, uten vinkelparenteser og uten tilbake slash foran @. I tekstområdet kontrollere at brukeren vil skrive sitt budskap (personlig melding). Hva han skriver her vil ikke inkludere hans fornavn, etternavn eller e-postadresse.

Ved konvertering av data satt inn i en e-post, vil vår Perl-skript i vår webserver sette brukerens e-postadresse i overskriften delen av e-postmeldingen. E-postmeldingen består av e-posten header delen og epost kroppen. Skjemaet meldingen er bare hva du skriver i tekstområdet kontroll. Når skjemaet vises, ser det ut som om fornavn, etternavn og e-post vil gå inn i e-header delen. E-posten vil gå inn i meldingshodet delen, men den første og siste navnene vil gå til kroppen delen av e-posten. Navn (brukernavnene) er ikke en del av epost header delen.

Ikke forveksle mellom form (brukerens) melding, e-postmeldingen og e-postmeldingen kroppen. Skjemaet meldingen er hva brukeren skriver i tekstområdet kontrollfeltet i skjemaet. E-postmeldingen består av overskrifter og kroppen delen av e-posten. Epost kroppen har avsenderens legitimasjon og avsenders personlige (Text Area) melding. Den ActivePerl Script Det er tre hoved kode segmenter av Perl-skript. Den første henter verdiene av kontrollene i datasettet sendes når brukeren har klikket på send-knappen. Husk at Perl-skript er i serveren som mottar informasjonen form.

Den andre hovedkodesegmentet validerer verdiene mottatt for å se om de var godt å skrive; hvis ikke, er feilmeldingen sendt tilbake til brukeren for å måtte skrive og e-posten er ikke sendt til e-postserveren. Hvis det ikke er noen skrivefeil, forbereder den tredje hovedsegmentet, og sender e-posten; ellers den tredje hovedsegmentet ikke sende e-posten.

Den første hovedkodesegmentet Dette er den første hovedkodesegmentet for Perl-skript for ovennevnte e-post: bruke strenge; print "Content-Type: text /html \\ n \\ n"; #obtain verdier fra webskjema bruk CGI; min $ query = new CGI; min $ recipientVal = $ query-> param ('mottaker'); min $ fnameVal = $ query-> param ('Fornavn'); min $ lnameVal = $ query-> param ('etternavn'); min $ emailVal = $ query-> param ('E-post'); min $ sbjVal = $ query-> param ('tema'); min $ msgVal = $ query->

Page   <<       [1] [2] [3] [4] [5] >>
Copyright © 2008 - 2016 Lese Utdanning Artikler,https://utdanning.nmjjxx.com All rights reserved.