Kā nosūtīt tīmekļa lapu pa e-pastu? Vienkāršākais veids, kā nosūtīt datus pa e-pastu, izmantojot HTML un PHP Kā nosūtīt grāmatzīmi pa e-pastu

Viena no populārākajām funkcijām vietnē ir pieteikuma vai pasūtījuma veidlapa, no kuras dati tiek nosūtīti pa e-pastu vietnes īpašniekam. Parasti šādas veidlapas ir vienkāršas un sastāv no diviem vai trim laukiem datu ievadīšanai. Kā izveidot šādu pasūtījuma veidlapu? Tas prasa valodas lietošanu HTML marķējums un PHP programmēšanas valoda.

Pati HTML iezīmēšanas valoda ir vienkārša; jums vienkārši jāizdomā, kā un kur ievietot noteiktus tagus. Ar PHP programmēšanas valodu lietas ir nedaudz sarežģītākas.

Programmētājam šādas formas izveide nav grūta, bet HTML maketētājam dažas darbības var šķist sarežģītas.

Izveidojiet datu iesniegšanas veidlapu html

Pirmā rinda būs šāda

Tas ir ļoti svarīgs formas elements. Tajā mēs norādām, kā dati tiks pārsūtīti un uz kuru failu. Šajā gadījumā viss tiek nodots POST metode fails send.php. Programmai šajā failā attiecīgi jāsaņem dati, tie tiks ietverti pasta masīvā un jānosūta uz norādīto e-pasta adresi.

Atgriezīsimies pie formas. Otrajā rindā būs lauks pilna vārda ievadīšanai. Ir šāds kods:

Veidlapas veids ir teksts, tas ir, lietotājs šeit varēs ievadīt vai kopēt tekstu no tastatūras. Nosaukuma parametrs satur formas nosaukumu. Šajā gadījumā tas ir fio; ar šo nosaukumu tiks pārsūtīts viss, ko lietotājs ievadījis šajā laukā. Viettura parametrs norāda, kas šajā laukā tiks rakstīts kā paskaidrojums.

Nākamā rinda:

Šeit gandrīz viss ir vienāds, bet lauka nosaukums ir e-pasts, un izskaidrojums ir tāds, ka lietotājs šajā formā ievada savu e-pasta adresi.

Nākamā rinda būs poga "Sūtīt":

Un pēdējā rindiņa formā būs atzīme

Tagad saliksim visu kopā.





Tagad padarīsim veidlapas laukus obligātus. Mums ir šāds kods:





Izveidojiet failu, kas pieņem datus no HTML veidlapas

Tas būs fails ar nosaukumu send.php

Failā pirmajā posmā jums ir jāpieņem dati no ziņu masīva. Lai to izdarītu, mēs izveidojam divus mainīgos:

$fio = $_POST["fio"];
$e-pasts = $_POST["e-pasts"];

PHP mainīgo nosaukumu priekšā ir $ zīme, un katras rindas beigās tiek ievietots semikolu. $_POST ir masīvs, kurā tiek nosūtīti dati no veidlapas. HTML formā nosūtīšanas metode ir norādīta kā metode = "post". Tādējādi divi mainīgie tiek ņemti no html veidlapas. Lai aizsargātu savu vietni, šie mainīgie ir jāizlaiž cauri vairākiem filtriem - php funkcijām.

Pirmā funkcija pārveidos visas rakstzīmes, kuras lietotājs mēģinās pievienot veidlapai:

Šajā gadījumā php netiek veidoti jauni mainīgie, bet tiek izmantoti esošie. Filtrs pārveidos rakstzīmi "<" в "<". Также он поступить с другими символами, встречающимися в html коде.

Otrā funkcija atšifrē URL, ja lietotājs mēģina to pievienot formai.

$fio = urldecode($fio);
$email = urldecode($email);

Ar trešo funkciju mēs noņemsim atstarpes no rindas sākuma un beigām, ja tādas ir:

$fio = trim($fio);
$email = trim($email);

Ir arī citas funkcijas, kas ļauj filtrēt php mainīgos. To izmantošana ir atkarīga no tā, cik jūs uztraucaties, ka uzbrucējs mēģinās pievienot programmas kodu šai html e-pasta iesniegšanas veidlapai.

No HTML formas uz PHP failu pārsūtīto datu validācija

Lai pārbaudītu, vai šis kods darbojas un vai dati tiek pārsūtīti, varat to vienkārši parādīt ekrānā, izmantojot atbalss funkciju:

atbalss $fio;
atbalss"
";
echo $email;

Otrā rinda šeit ir nepieciešama, lai atdalītu php mainīgo izvadi dažādās rindās.

Saņemto datu nosūtīšana no HTML veidlapas uz e-pastu, izmantojot PHP

Lai nosūtītu datus pa e-pastu, PHP ir jāizmanto pasta funkcija.

pasts("uz kuru adresi sūtīt", "vēstules priekšmets", "Ziņojums (vēstules pamatteksts)","No: no kura e-pasta vēstule nosūtīta \r\n");

Piemēram, jums ir jānosūta dati uz vietnes īpašnieka vai pārvaldnieka e-pastu [aizsargāts ar e-pastu].

Vēstules tēmai jābūt skaidrai, un vēstules ziņojumā ir jābūt lietotāja norādītajam HTML formā.

pasts (" [aizsargāts ar e-pastu]", "Pieteikums no vietnes", "Pilns vārds:".$fio.". E-pasts: ".$email ,"No: [aizsargāts ar e-pastu]\r\n");

Nepieciešams pievienot nosacījumu, kas pārbaudīs, vai veidlapa ir nosūtīta, izmantojot PHP uz norādīto e-pasta adresi.

if (mail(" [aizsargāts ar e-pastu]", "Pasūtīt no vietnes", "Pilns vārds:".$fio.". E-pasts: ".$email ,"No: [aizsargāts ar e-pastu]\r\n"))
{
echo "ziņa veiksmīgi nosūtīta";
) cits (
}

Tādējādi faila send.php programmas kods, kas nosūtīs HTML veidlapas datus uz e-pastu, izskatīsies šādi:

$fio = $_POST["fio"];
$e-pasts = $_POST["e-pasts"];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$fio = trim($fio);
$email = trim($email);
//atbalss $fio;
//atbalss "
";
//echo $email;
if (mail(" [aizsargāts ar e-pastu]", "Pieteikums no vietnes", "Pilns vārds:".$fio.". E-pasts: ".$email ,"No: [aizsargāts ar e-pastu]\r\n"))
( atbalss "ziņojums veiksmīgi nosūtīts";
) cits (
echo "ziņojuma nosūtīšanas laikā radās kļūdas";
}?>

Trīs rindiņas, lai pārbaudītu, vai dati tiek pārsūtīti uz failu, tiek komentēti. Ja nepieciešams, tos var noņemt, jo tie bija nepieciešami tikai atkļūdošanai.

Veidlapas iesniegšanas HTML un PHP kodu ievietojam vienā failā

Šī raksta komentāros daudzi cilvēki uzdod jautājumu, kā pārliecināties, ka gan HTML forma, gan PHP kods datu nosūtīšanai uz e-pastu ir vienā failā, nevis divos.

Lai īstenotu šo darbu, failā send.php jāievieto formas HTML kods un jāpievieno nosacījums, kas pārbaudīs mainīgo lielumu klātbūtni POST masīvā (šis masīvs tiek nosūtīts no formas). Tas ir, ja mainīgie masīvā neeksistē, jums ir jāparāda lietotājam forma. Pretējā gadījumā jums ir jāsaņem dati no masīva un jānosūta adresātam.

Apskatīsim, kā nomainīt PHP kodu send.php failā:



Pieteikuma veidlapa no vietnes


//pārbaudiet, vai POST masīvā pastāv mainīgie
if(!isset($_POST["fio"]) un !isset($_POST["e-pasts"]))(
?>





) cits (
//parādīt formu
$fio = $_POST["fio"];
$e-pasts = $_POST["e-pasts"];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$fio = apgriezt($fio);
$email = trim($email);
if (mail(" [aizsargāts ar e-pastu]", "Pieteikums no vietnes", "Pilns vārds:".$fio.". E-pasts: ".$email ,"No: [aizsargāts ar e-pastu]\r\n"))(
echo "Ziņojums veiksmīgi nosūtīts";
) cits (
echo "Nosūtot ziņojumu, radās kļūdas";
}
}
?>

Mēs pārbaudām mainīgā esamību POST masīvā ar PHP funkciju isset(). Izsaukuma zīme pirms šīs funkcijas nosacījumā nozīmē noliegumu. Tas ir, ja mainīgais neeksistē, mums ir jāparāda sava forma. Ja es nebūtu ievietojis izsaukuma zīmi, nosacījums burtiski nozīmētu "ja pastāv, tad parādiet veidlapu". Un tas mūsu gadījumā ir nepareizi. Protams, jūs varat to pārdēvēt par index.php. Ja pārdēvējat failu, neaizmirstiet pārdēvēt faila nosaukumu rindā

. Veidlapai ir jābūt saitei uz to pašu lapu, piemēram, index.php. Kodam pievienoju lapas nosaukumu.

Biežas kļūdas, kas rodas, iesniedzot PHP veidlapu no vietnes

Pirmā, iespējams, vispopulārākā kļūda ir tad, kad redzat tukšu, baltu lapu bez ziņojumiem. Tas nozīmē, ka esat pieļāvis kļūdu lapas kodā. Jums ir jāiespējo visu PHP kļūdu parādīšana, un tad jūs redzēsit, kur tika pieļauta kļūda. Pievienojiet kodam:

ini_set("displeja_kļūdas","Ieslēgts");
error_reporting("E_ALL");

Send.php failam ir jādarbojas tikai serverī, pretējā gadījumā kods vienkārši nedarbosies. Ieteicams, lai tas nebūtu lokāls serveris, jo tas ne vienmēr ir konfigurēts datu sūtīšanai uz ārēju pasta serveri. Ja palaižat kodu nevis serverī, tad PHP kods tiks parādīts tieši lapā.

Tādējādi pareizai darbībai es iesaku ievietot send.php failu vietnes mitināšanas vietnē. Parasti tur viss jau ir konfigurēts.

Vēl viena izplatīta kļūda ir, ja parādās paziņojums “Ziņojums veiksmīgi nosūtīts”, bet vēstule nenonāk pa pastu. Šajā gadījumā jums rūpīgi jāpārbauda līnija:

if (mail(" [aizsargāts ar e-pastu]", "Pasūtīt no vietnes", "Pilns vārds:".$fio.". E-pasts: ".$email ,"No: [aizsargāts ar e-pastu]\r\n"))

Tā vietā [aizsargāts ar e-pastu] ir jābūt e-pasta adresei, uz kuru vēstule jānosūta, bet tā vietā[aizsargāts ar e-pastu] jābūt esošai šīs vietnes e-pasta adresei. Piemēram, vietnei tas būs . Tikai šajā gadījumā tiks nosūtīta vēstule ar veidlapas datiem.

Internetā ir daudz interesanta un noderīga satura. Dažreiz var būt daudz vieglāk nosūtīt draugam saiti uz interesantu informāciju, nevis kopēt to no vietnes un pārsūtīt citos veidos. Kā pēc iespējas ērtāk nosūtīt saiti?

E-pasts

Lielākā daļa mūsdienu e-pasta pakalpojumu atbalsta iespēju vienkārši ievietot saiti. Tas ir, jums tas vienkārši jākopē no pārlūkprogrammas adreses joslas, pēc tam ielīmējiet to vēstulē, un tas kļūs “noklikšķināms”, tas ir, pēc noklikšķināšanas uz tā automātiski tiks atvērta vēlamā lapa.

Ja vietnes vai lapas adresi ievadāt manuāli, saite šādā veidā nedarbosies. Lai to novērstu, mēģiniet saites sākumā ierakstīt http:// vai www. Tas nozīmē, ka vietne.com vietā jums ir jāraksta http://site.com vai www.site.com. Pēc tam saite būs noklikšķināma.

Varat arī pievienot saiti uz noteiktiem vārdiem vēstulē. Lai to izdarītu, tie ir jāatlasa un rīkjoslā jānoklikšķina uz "Ievietot saiti" un pēc tam logā jānorāda vajadzīgās lapas adrese. Ja jūsu pasts atbalsta html tagu izmantošanu, varat ievietot šādu saiti: vārdi, kuriem pievienojat saiti.

Klasesbiedriem

Pirms saites nosūtīšanas uz Odnoklassniki, jums ir jālejupielādē īpaša programmatūra, kas ļauj to izdarīt. Viena no šādām programmām ir GF Tools. Tas ir pilnīgi bezmaksas un ļoti viegli lietojams. Varat arī vienkārši ielīmēt saites tekstu ziņojumā, ko nosūtāt citam lietotājam. To var arī izlikt pie sienas.

Saskarsmē ar

Varat arī ievietot saiti statusā un ziņojumos uz sienas. Šajā gadījumā saite būs “noklikšķināma” visiem lietotājiem. Ievietojot saiti uz sienu, vietnes skripts automātiski parādīs pirmo attēlu no lapas, uz kuru ir dota saite, kā arī vairākas teksta rindiņas no tās.

Ir daudz veidu, kā "izgriezt" tīmekļa lapu.

Bet Pocket ir nepieciešama lietotne un Pocket konts. Tas nozīmē, ka jums ir jāinstalē cita lietojumprogramma, jāpiesakās pakalpojumā, jāsinhronizē utt. Būtu jauki, ja jūs varētu darīt to pašu, izmantojot savu pastkasti.

Tā ir EmailThis ideja, kas ir tieši tas, ko norāda tās nosaukums. Ar vienu klikšķi šī grāmatzīme (vai paplašinājums,
ja esat Chrome lietotājs) piegādās pašreizējo tīmekļa lapu jūsu iesūtnē. Tāpat kā Pocket, tas noņem visas reklāmas un mobilajām ierīcēm nedraudzīgu formatējumu, atstājot jums tikai viegli lasāmu tekstu un attēlus. (Ja vēlaties atgriezties vietnē, tajā ir arī tālāk norādītā sākotnējā saite.)

Kad esat pabeidzis sākotnējo iestatīšanu (angļu valodā), EmailThis izmantošana burtiski ir pogas klikšķis: noklikšķiniet uz grāmatzīmes (vai paplašinājuma ikonas), ja vēlaties sev nosūtīt lapu, kuru pašlaik skatāt.

Interesanti, ka grāmatzīme ir savietojama arī ar Android un iOS pārlūkprogrammām, taču tās izmantošana prasa nedaudz vairāk piepūles. Android lietotājiem adreses joslā jāievada "e-mail this", savukārt iOS lietotājiem ir jāatver savas saglabātās grāmatzīmes un jāpieskaras "Nosūtīt pa e-pastu".

Protams, daudzām mobilajām pārlūkprogrammām ir opcija “lasīt vēlāk”, kas darbojas lieliski. Bet, ja vēlaties, lai lapa tiktu piegādāta jūsu iesūtnē, tas ir labākais veids.

Diemžēl EmailThis nav saderīgs ar Microsoft Edge, kas neatbalsta grāmatzīmes. Ja atrodat risinājumu, noteikti informējiet mani komentāros.

Es pārbaudīju rīku ar dažādām tīmekļa lapām. Tas lieliski strādāja ar lielāko daļu no viņiem. Es pamanīju, ka daži iegultie attēli netiek "izgriezti", iespējams, tāpēc, ka tie tika mitināti trešās puses vietnē. Bet kopumā es atklāju, ka EmailThis ir ātrs un vienkāršs veids, kā nosūtīt jebkuru tīmekļa lapu uz jūsu iesūtni.

Un šī opcija man patīk labāk nekā opcija “lasīt vēlāk”, jo mana iesūtne dublē uzdevumu saraksta funkcionalitāti. Tādā veidā tīmekļa saturs, ko es uzskatu par svarīgu, netiek aizmirsts vai nepamanīts.

Redaktora piezīme:Šis raksts sākotnēji tika publicēts 2014. gada 25. februārī, un šodien tas ir atjaunināts.

Kādi ir daži veidi, kā nosūtīt tīmekļa lapu uz e-pastu?
Dažādos veidos, atkarībā no tā, ko domāja jautājuma autors.

Piemēram, ja jums ir programma ekrānuzņēmumu uzņemšanai, varat uzņemt atvērtas lapas ekrānuzņēmumu un nosūtīt to kā attēlu uz vajadzīgās personas e-pastu. Šajā gadījumā attēls būs miris un saites nedarbosies.

Man ir aizdomas, ka pareizāka atbilde būtu lapas saglabāšana, izmantojot standarta metodes. Pārlūkprogrammā noklikšķiniet uz izvēlnes “Fails”, pēc tam uz “Saglabāt kā” un saglabājiet visu tīmekļa lapu. Ja personai, kurai šī lapa tiek nosūtīta, ir pieejams internets, viņš varēs sekot lapas saitēm, tās strādās.

Pirmajā gadījumā lapu būs vieglāk atvērt, ja būs izvēlēts kopīgs attēla formāts - bmp, jpg, gif. Otrajā gadījumā var rasties problēmas, parādot lapu, kas saglabāta vienā pārlūkprogrammā, bet atvērta citā, tā var netikt parādīta pareizi vai neatvērsies vispār.

Abi korpusi paredzēti saglabāšanai arhīvā, nosūtīšanai personai, kurai nav pastāvīgas piekļuves internetam. Šajā gadījumā labāk to pievienot vēstulei.

Bet, ja cilvēkam vienmēr ir internets, kāpēc saglabāt un sūtīt viņam lapu vai taisīt pielikumu? Daudz vienkāršāk ir kopēt vajadzīgās lapas saiti adreses joslā un ielīmēt to vēstules pamattekstā.

Lai to izdarītu, varat izmantot specializētus tiešsaistes arhivēšanas pakalpojumus, piemēram - Archive.today: arhivēt šodien

Šeit jums vienkārši jāievieto resursa URL adrese, un sistēma pati izveidos zip failu un URL saiti uz tīmekļa lapas “momentuzņēmumu”, kas vienmēr būs tiešsaistē, pat ja sākotnējā versija pazūd.

E-pastam var pievienot zip failu, e-pasta laukā var ievietot saiti uz tīmekļa lapas “momentuzņēmumu”, un visu var nosūtīt pa e-pastu vai saglabāt jebkurā citā veidā.

Piemēram, Maskavas FAQ lapas šodienas versija (kopā ar zip failu) ir pieejama šeit: arhivēt šodien

Varat arī izmantot tiešsaistes pakalpojumus, lai uzņemtu ekrānuzņēmumus, piemēram, Web-capture: web-capture net

Kādi ir daži veidi, kā nosūtīt tīmekļa lapu uz e-pastu?
Dažādos veidos, atkarībā no tā, ko domāja jautājuma autors.

Piemēram, ja jums ir programma ekrānuzņēmumu uzņemšanai, varat uzņemt atvērtas lapas ekrānuzņēmumu un nosūtīt to kā attēlu uz vajadzīgās personas e-pastu. Šajā gadījumā attēls būs miris un saites nedarbosies.

Man ir aizdomas, ka pareizāka atbilde būtu lapas saglabāšana, izmantojot standarta metodes. Pārlūkprogrammā noklikšķiniet uz izvēlnes “Fails”, pēc tam uz “Saglabāt kā” un saglabājiet visu tīmekļa lapu. Ja personai, kurai šī lapa tiek nosūtīta, ir pieejams internets, viņš varēs sekot lapas saitēm, tās strādās.

Pirmajā gadījumā lapu būs vieglāk atvērt, ja būs izvēlēts kopīgs attēla formāts - bmp, jpg, gif. Otrajā gadījumā var rasties problēmas, parādot lapu, kas saglabāta vienā pārlūkprogrammā, bet atvērta citā, tā var netikt parādīta pareizi vai neatvērsies vispār.

Abi korpusi paredzēti saglabāšanai arhīvā, nosūtīšanai personai, kurai nav pastāvīgas piekļuves internetam. Šajā gadījumā labāk to pievienot vēstulei.

Bet, ja cilvēkam vienmēr ir internets, kāpēc saglabāt un sūtīt viņam lapu vai taisīt pielikumu? Daudz vienkāršāk ir kopēt vajadzīgās lapas saiti adreses joslā un ielīmēt to vēstules pamattekstā.

Lai to izdarītu, varat izmantot specializētus tiešsaistes arhivēšanas pakalpojumus, piemēram - Archive.today: arhivēt šodien

Šeit jums vienkārši jāievieto resursa URL adrese, un sistēma pati izveidos zip failu un URL saiti uz tīmekļa lapas “momentuzņēmumu”, kas vienmēr būs tiešsaistē, pat ja sākotnējā versija pazūd.

E-pastam var pievienot zip failu, e-pasta laukā var ievietot saiti uz tīmekļa lapas “momentuzņēmumu”, un visu var nosūtīt pa e-pastu vai saglabāt jebkurā citā veidā.

Piemēram, Maskavas FAQ lapas šodienas versija (kopā ar zip failu) ir pieejama šeit: arhivēt šodien

Varat arī izmantot tiešsaistes pakalpojumus, lai uzņemtu ekrānuzņēmumus, piemēram, Web-capture: web-capture net