I am actually new in using sendmail but I have read a lot about this, and only redirect me to use PHPmailer,swiftmailer etc... But it's so complicated to understand without the knowledge of the basics. So I decided to try simple, and this is what I've got.
I have configured my php.ini:
[mail function]
smtp_port = 465
sendmail_path="C:\wamp\sendmail\sendmail.exe -t"
mail.add_x_header = On
And my sendmail.ini:
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=
error_logfile=error.log
debug_logfile=debug.log
auth_username=mygmail@gmail.com
auth_password=mypassword
hostname=localhost
and I have this PHP code:
$to = 'mygmail@gmail.com';
$message = $_POST['message'];
$email = $_POST['email'];
$contact_num = $_POST['contact_number'];
$headers = 'From:'.'$email' . "\r\n" .'$contact' . "\r\n" .
'Reply-To: mygmail@gmail.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $message, $headers);
but whenver i click the submit button the sendmail.exe appears and nothing happens. And when I check the error.log it says:
14/07/01 23:23:48 : Connection Closed Gracefully.
This part is a copy & paste of post: Sendmail Wamp Php
The problem is that sendmail has to be run as an administrator. This is the solution to help any one on my situation.
Execute as adminitrator
if you using gmail you need create new password "Your application-specific passwords"
If that still dosen't work (My answer)
Make sure the server (or IDE) is being run as admin, by either:
1) Right clicking the program (e.g. server, ide, command prompt) and clicking "Run as Administer"
2) OR Right click program> properties> compatiblity> Tick execute as admin
For instance if your using the PHP in built server, run the command prompt as admin and start the server as normal using
Of course change the file paths to suit your needs.
EDIT: This is probally the bug you headed into https://bugs.php.net/bug.php?id=44994
solution is setting up sendmail.ini and php.ini
you need to communicante with your isp to find out what is there open smtp server most of them have one and it is like smtp.yourisp.com most of the time.
you may also setup the smtp using your own email sever or existing email address this will require additional settings such as specific smtp server, portnumber, forcing the sendmail from to be the actual mail, username, password and most of the time ssl
php.ini
Making sure that php and sendmail are run as administrator seems a good idea but this did not solved my problem.
Solution in sendmail.ini
do not use smtp_ssl = auto that was what was causing my bug just set it to ssl tls or none according to specification of your server
Make sure XAMPP is run as Administrator. Do that by right clicking on it and clicking on "Run as Administrator." That fixed it for me.