Johnnyboy123 Posted May 12, 2011 Share Posted May 12, 2011 I'm trying to send email with php for the first time. Trying to make it so that after a user registers he/she receives an email after submitting. I'm trying to send it from 1 comp with an email of [email protected] to another with an email of [email protected] (I just really want to test if it's sending email another before I get technical with the email) Should this code work, here is part of my code with the email section in it: <?php // query $sql = "INSERT INTO student (sno, sname, init, fname, title, msname, dob, sex, lang, idno, telh, telw, cel, fax, email, address, contact_flag ) VALUES ('', '$sname', '$init', '$fname', '$title', '$msname', '$dob', '$sex','$lang', '$idno', '$telh', '$telw', '$$cell', '$fax', '$email', '$address', '$contact')"; mysql_query($sql) or die('Error:' . mysql_error()); $sno_id = mysql_insert_id(); // get the cid $cname = mysql_real_escape_string($_POST['cname']); $getCID = "SELECT cid FROM course WHERE cname='$cname'"; $result = mysql_query($getCID); if($result) { $row = mysql_fetch_assoc($result); $course_id = $row['cid']; // add the student to the course_student table $addCID = 'INSERT INTO course_student (cid, sno) VALUES(' . $row['cid'] . ', ' . $sno_id . ')'; mysql_query($addCID) or die('Error:' . mysql_error()); // send email $Name = "Da Duder"; //senders name $email = "[email protected]"; //senders e-mail adress $recipient = "[email protected]"; //recipient $mail_body = "The text for the mail..."; //mail body $subject = "Subject for reviever"; //subject $header = "From: ". $Name . " <" . $email . ">\r\n"; //optional headerfields ini_set('sendmail_from', '[email protected]'); //Suggested by "Some Guy" if (mail($recipient, $subject, $mail_body, $header)){ echo "mail has been sent"; //mail command } } header( "refresh:5;student_man.php" ); echo 'Registration <b> successful </b> You\'ll be redirected in about 5 secs. If not, click <a href="student_man.php">here</a>.'; } } ?> Email is under the "email section" comment based of what I found on google. I'm not getting any errors so I want to know if the email isn't going through because of my code or my smtp setting etc. Link to comment https://forums.phpfreaks.com/topic/236246-should-this-send-mail/ Share on other sites More sharing options...
cssfreakie Posted May 12, 2011 Share Posted May 12, 2011 With all things: the proof of the pudding is in the eating, (om nom nom) so test it and see if you get errors. To enable error reporting add the following above your script: error_reporting(E_ALL); ini_set("display_errors", 1); remove afterwards, on a remote host. also in I noticed you had a double $ i you values part of the sql query ( '$$cell' ) Apart from that do you run this local or on a remote server. If it's local host you might want to change some smtp setting in your php.ini this is what i have [mail function] ; For Win32 only. ; http://php.net/smtp was localhost SMTP = smtp.yourcablecompany.com ; http://php.net/smtp-port smtp_port = 25 So you need to check out what the settings are of your provider. No need to do this of course when you have a paid remote host. Link to comment https://forums.phpfreaks.com/topic/236246-should-this-send-mail/#findComment-1214661 Share on other sites More sharing options...
Johnnyboy123 Posted May 12, 2011 Author Share Posted May 12, 2011 Thanks alot. After changing the smtp and port details I received this error: Warning: mail() [function.mail]: Failed to connect to mailserver at "my smtp details" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\Program Files\EasyPHP-5.3.3\www\Project\registerstudent.php on line 132 <?php if($result) { $row = mysql_fetch_assoc($result); $course_id = $row['cid']; // add the student to the course_student table $addCID = 'INSERT INTO course_student (cid, sno) VALUES(' . $row['cid'] . ', ' . $sno_id . ')'; mysql_query($addCID) or die('Error:' . mysql_error()); // send email $Name = "Da Duder"; //senders name $email = "[email protected]"; //senders e-mail adress $recipient = "[email protected]"; //recipient $mail_body = "The text for the mail..."; //mail body $subject = "Subject for reviever"; //subject $header = "From: ". $Name . " <" . $email . ">\r\n"; //optional headerfields ini_set('sendmail_from', '[email protected]'); //Suggested by "Some Guy" mail($recipient, $subject, $mail_body, $header); //Line 132 } } } ?> What do I do now to correct this? Link to comment https://forums.phpfreaks.com/topic/236246-should-this-send-mail/#findComment-1214675 Share on other sites More sharing options...
Johnnyboy123 Posted May 12, 2011 Author Share Posted May 12, 2011 Arg nevermind forgot a . in my smtp details haha sending fine. Thanks alot for the help Link to comment https://forums.phpfreaks.com/topic/236246-should-this-send-mail/#findComment-1214683 Share on other sites More sharing options...
cssfreakie Posted May 12, 2011 Share Posted May 12, 2011 your welcome! Link to comment https://forums.phpfreaks.com/topic/236246-should-this-send-mail/#findComment-1214696 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.