PHP-and-MySQL/C4/Sending-Email-Part-3/English-timed
From Script | Spoken-Tutorial
Revision as of 11:42, 6 June 2015 by Sandhya.np14 (Talk | contribs)
Time | Narration |
00:00 | Welcome back. How do we fix this "'Sendmail_from' not set in php dot ini" error? |
00:11 | We haven't determined who the email is from. |
00:18 | We need to do this in order to send the email. |
00:23 | We won't use something like a "from" parameter here. |
00:29 | We need to send to specific headers. |
00:32 | So, here we create a "$headers" variable which is not equal to something like "me @me.com" |
00:43 | What we need to do is, work with the standardized mail header and that is "From:" and a colon not semi colon and then we say for example "PHP Academy" |
00:54 | Or you could say something like "admin @PHP Academy" and add ".com", if you like. |
01:02 | I don't actually have that domain name but we'll just keep it as that. |
01:08 | So "From: admin @phpacademy.com". |
01:11 | And now, inside our mail we need to add another parameter which is "headers". |
01:18 | And now we come here and you can type "Alex" and here "This is a test!" |
01:24 | Click on "Send me this" and we face another error. |
01:27 | Now I am not actually running a mail server on my computer. |
01:33 | If you don't want to run a mail server on your computer, google for at mail free mail server and this will install a mail server on your computer just like we are doing now running on a local host. |
01:46 | So, you will have a SMTP mail server running under local host. |
01:54 | Now, as I don't have a mail server, I will use my university email system which is the DNS or the "Domain Name Server" of my university email. |
02:06 | That's the way my email is sent through my university. |
02:11 | If you know a specific DNS Server, if you have a domain name already, if you have a website you will know it or you will be able to find it, at least. |
02:22 | You will be able to send an email through that. |
02:27 | I know that my university email DNS server is "mailhost dot shef dot ac dot uk" because I'm in Sheffield university. |
02:36 | So I need to incorporate this into my "php dot ini". |
02:41 | And the best way to do this is to come here and setup our variables. |
02:46 | Okay, we need 2, set SMTP in "php dot ini" |
02:59 | and instead of opening up my "php dot ini" file, I'll just use the "ini_set()" function |
03:05 | and the variable name is "SMTP". |
03:12 | So, we are editing this line inside our "php dot ini" file. |
03:16 | And I type the "mailhost" in there as the value. |
03:20 | Here we just say echo "get_ini()" which gets a specific value. |
03:25 | Next I'll say "SMTP" and that can just kill the script there. |
03:30 | So, we can see how this works. |
03:32 | So, if I say "Alex" and then "Test" and click on "Send me this". |
03:40 | Oh! Sorry I have typed this completely wrong. Big mistake. That is "ini_get()" and let's refresh that. |
03:52 | Okay, we are basically setting our "SMTP" inside our "ini" file to "mail host dot shef dot ac dot uk". |
03:59 | And then we will echo out the value of this. |
04:03 | So, this just tells me that- that is set to "mail host dot shef dot ac dot uk". |
04:10 | Presuming this mail host server or DNS server works, then the rest of the code will work. |
04:17 | After sending our mail, I'll just kill the page. |
04:24 | Um.... no I won't. I'll just kill the page. |
04:28 | Let's go back and say "Alex" and "This is a test". |
04:36 | Just checking that everything is okay. We've got my "$to", my "$subject", my "$headers" saying "From:admin@phpacademy.com". |
04:45 | And our $body in here and we are executing our mail() function. |
04:51 | So, when I click "Send me this", nothing happens. We've got no errors, so we can presume that everything has worked. |
04:58 | If I come into my Hotmail or my email and click on my INBOX, you can see that we've now got a mail from "admin @ phpacademy dot com". |
05:09 | If we click on it, we have "Email from PHPAcademy" as our subject line that we had set here. |
05:17 | And we have the email address that I specified from. |
05:22 | You can put this as from Alex or from 'phpacademy'. |
05:27 | And then we have "This is an email from Alex" which is the name we gave inside the form here. |
05:35 | And then we have 2 line-breaks which are present, 1 and 2. |
05:40 | And "This is a test" which is the text I put in there. |
05:46 | So, that's a mail function by using my university's DNS mail server. |
05:50 | Your INSP will have a DNS mail server. |
05:55 | It may require authentication on which I will be completing the tutorial soon. |
06:00 | So, if this doesn't work for you watch that tutorial or just drop me an email or contact me through my you-tube. |
06:09 | OK, so I hope that was useful to a lot of people. |
06:13 | Please subscribe if you haven't already. |
06:15 | Alright, thanks for watching. This is Evan Varkey, dubbing for the Spoken Tutorial Project. Bye bye. |