嗨,我已经有一段时间了,并且一直在努力做事。它只是去数据库,我经常检查它,但你可以认为这是一种非常繁琐的做事方式。这是我目前的代码。
<?php
$name = "";
$email = "";
$msg_to_user = "";
if ($_POST['name'] != "") {
include_once "newsletter/connect_to_mysql.php";
// Be sure to filter this data to deter SQL injection, filter before querying database
$name = $_POST['name'];
$email = $_POST['email'];
$sql = mysql_query("SELECT * FROM newsletter WHERE email='$email'");
$numRows = mysql_num_rows($sql);
if (!$email) {
$msg_to_user = '<br /><br /><span style="font color="FF0000">Please type an email address ' . $name . '.</span>';
} else if ($numRows > 0) {
$msg_to_user = '<br /><br /><font color="FF0000">' . $email . ' is already in the system.</font>';
} else {
$sql_insert = mysql_query("INSERT INTO newsletter (name, email, dateTime)
VALUES('$name','$email',now() )") or die (mysql_error());
$msg_to_user = '<br /><br /><div style="color=#F47926;width:180px;">Thanks ' . $name . ', expect an email shortly!</div>';
$name = "";
$email = "";
}
}
?>
我正在尝试添加一种简单的方法来发送电子邮件,并将电子邮件和姓名发送到我自己的电子邮件地址。这样我就不必经常检查数据库本身,而是查看它们出现在我的电子邮件中。我希望这是有道理的。
答案 0 :(得分:0)
进行一些额外的检查以验证通过$ _POST传递的数据是明智的。
这样的事情应该让你开始。
$email = filter_var($_POST['Email'], FILTER_VALIDATE_EMAIL);
以下是发送电子邮件的方式。
$message = 'Name: ' . $_POST['name'] . ', Email: ' . $_POST['email'];
mail('your@email.com', 'A New User Has Signed Up', $message);
答案 1 :(得分:-1)
我真的不知道需要做什么,但如果你要求改进或建议......
而不是:
$msg_to_user = '<br /><br /><span style="font color="FF0000">Please type an email address ' . $name . '.</span>';
你可以这样做:
$msg_to_user = "<br /><br /><span style='color:FF0000'>Please type an email address {$name}.</span>";
注意:使用双引号。