Създаване на списък за уведомяване на потребители с PHP & MySQL
create_database.sql:
Чрез този файл ще се направи базата данни.
index.php:
От този файл потребителите ще изпращат е-mail, който в последствие ще се вкара в база данни.
send.php:
От този файл ще се изпраща информация до всички изпратени пощи.
create_database.sql:
Чрез този файл ще се направи базата данни.
Код:
CREATE TABLE `emails` (
`email` VARCHAR( 255 ) NOT NULL
);
index.php:
От този файл потребителите ще изпращат е-mail, който в последствие ще се вкара в база данни.
Код:
<html> <head> <title>Създаване на списък за уведомяване на потребители с PHP & MySQL, подобен на NotifyList</title> </head>
<body>
<?php
$email = $_POST['email'] ;
if (!$email) /*проверка дали е попълнено полето*/
{
?>
<form action='index.php' method='post'>
E-mail:<br>
<input type='text' name='email'><br>
<input type='submit' value='Изпрати'>
</form>
<?php
}
else /* ако е попълнено полето, да се изпрати до базата данни */
{
@ $db = mysql_connect('localhost', 'root', '');
if (!$db)
{
echo 'Има проблем с влизането в базата данни. Моля, опитайте отново след малко.';
}
mysql_select_db('database');
$query = mysql_query("INSERT INTO `emails` values ("$email")") ;
if ($query) /* email изпратен до базата данни */
echo "Благодарим Ви!" ;
else /* email не е изпратен */
echo "E-mail не е изпратен!" ;
}
?>
</body> </html>
send.php:
От този файл ще се изпраща информация до всички изпратени пощи.
Код:
<html> <head> <title>Създаване на списък за уведомяване на потребители с PHP & MySQL, подобен на NotifyList</title> </head>
<body>
<?php
$subject = $_POST['subject'] ;
$from = $_POST['from'] ;
$header = "From: ".$from ;
$content = $_POST['content'] ;
if (!$email ||$from || $content) /* проверка дали са попълнени полетата */
{
?>
<form action='send.php' method='post'>
От E-mail:<br>
<input type='text' name='from'><br>
Тема:<br>
<input type='text' name='subject'><br>
<textarea cols='20' rows='10' name='content'></textarea>
<input type='submit' value='Изпрати'>
</form>
<?php
}
else /* ако са попълнени полетата, да се изпратят съобщения */
{
@ $db = mysql_connect('localhost', 'root', '');
if (!$db)
{
echo 'Има проблем с влизането в базата данни. Моля, опитайте отново след малко.';
}
mysql_select_db('database');
$query = mysql_query("SELECT * from `emails`") ;
$query_result = mysql_num_rows($query) ;
for ($i=0; $i <$query_result; $i++)
{
$email = mysql_fetch_array($query) ;
mail($email['email'], $subject, $content, $header) ;
}
}
?>
</body> </html>