Простая база данных на PHP и MySQL
Сделал на PHP для себя простенькую базу событий с напоминалкой о них на e-mail. Вполне сойдет как пример для работы в PHP с базой данных.
В качестве базы данных конечно MySQL.
Таблички можно создать вручную через phpMyAdmin, как описано в примере создания опроса на PHP здесь https://ds-release.ru/kak-sdelat-formu-dlya-oprosa-na-php/, но здесь таблички я буду создавать с помощью запросов.
Файл для создания таблиц create.php (его запускаем 1 раз, потом удаляем после создания таблиц).
<?
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "CREATE TABLE count (nn int(20))";
$res = mysql_query($query);
$query = "INSERT INTO count VALUES('0')";
$res = mysql_query($query);
$query = "CREATE TABLE count1 (nn int(20))";
$res = mysql_query($query);
$query = "INSERT INTO count1 VALUES('0')";
$res = mysql_query($query);
$query = "CREATE TABLE usvers (nn int(20), name VARCHAR(240), adres VARCHAR(240))";
$res = mysql_query($query);
$query = "CREATE TABLE sobbit (nn int(20), usver VARCHAR(240), sobit VARCHAR(240), opsobit text(64000), kogda DATETIME)";
$res = mysql_query($query);
/* Закрыть соединение */
mysql_close();
?>
Форма регистрации пользователя add.php
<html> <head> <title>Напоминалка по событиям на PHP</title> <meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?> <body> <P> <center> <TABLE WIDTH = 400><TR><TD align = right> <FORM ACTION="add1.php" METHOD="POST"> E-mail:<BR> <INPUT TYPE="text" NAME="name" SIZE="30" MAXLENGTH="240"> <P> Пароль:<BR> <INPUT TYPE="text" NAME="adres" SIZE="30" MAXLENGTH="240"> <P> <INPUT TYPE="submit" VALUE="Добавить"> </FORM> </TD></TR></TABLE></CENTER> </center> </body> </html>
Заносим в базу логин и пароль add1.php
<?
/* Этот скрипт получает переменные из add.php */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "count";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$name = mysql_real_escape_string($name);
$adres = mysql_real_escape_string($adres);
$query = "SELECT * FROM $userstable";
$res1 = mysql_query($query);
while ($row = mysql_fetch_row($res1))
$nn=$row[0]+1;
$query = "UPDATE $userstable SET nn=$nn";
mysql_query($query) or die(mysql_error());
/* Таблица MySQL, в которой хранятся данные */
$userstable = "usvers";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
/* составить запрос для вставки информации о клиенте в таблицу */
$query = "INSERT INTO $userstable VALUES('$nn', '$name','$adres')";
/* Выполнить запрос. Если произойдет ошибка - вывести ее. */
mysql_query($query) or die(mysql_error());
echo "Информация о вас занесена в базу данных.";
/* Закрыть соединение */
mysql_close();
?>
<a href="login.php" >Войти</a>
Зарегистрировались.
Теперь форма ввода логина и пароля login.php
<html> <head> <title>Напоминалка по событиям на PHP</title> <meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?> <body> <P> <center> <TABLE WIDTH = 400><TR><TD align = right> <FORM ACTION="see.php" METHOD="POST"> E-mail:<BR> <INPUT TYPE="text" NAME="name" SIZE="30" MAXLENGTH="240"> <P> Пароль:<BR> <INPUT TYPE="text" NAME="pass" SIZE="30" MAXLENGTH="240"> <P> <INPUT TYPE="submit" VALUE="Вход"> </FORM> </TD></TR></TABLE></CENTER> <a href="add.php">Регистрация</a> <P> <a href="forgot.php">Напомнить пароль</a> </center> </body> </html>
После правильного ввода логина и пароля отображаем список событий see.php
<html>
<head>
<title>Напоминалка по событиям на PHP</title>
<meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?>
<link rel="stylesheet" type="text/css" href="tcal.css" />
<script type="text/javascript" src="tcal.js"></script>
</head>
<body>
<?
/* Этот скрипт получает переменные из login.php */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
$today = getdate();
$toddi = "$today[year]-$today[mon]-$today[mday]";
$toddi0 = "12:00";
$date = $_POST['date'];
$userstable = "usvers";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE name = '".$name."' and adres = '".$pass."' ";
$res = mysql_query($query) or die(mysql_error());
$name = mysql_real_escape_string($name);
$adres = mysql_real_escape_string($adres);
$number1 = mysql_num_rows($res);
if ($number1 == 0) {
echo 'Пользователь '.$name." не найден либо пароль не верен!<BR><BR>";
} else {
echo 'Записи пользователя '.$name."<BR><BR>";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "sobbit";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE usver = '".$name."' ";
$res = mysql_query($query) or die(mysql_error());
/*получаем строки из базы данных MySQL */
while ($row=mysql_fetch_array($res)) {
echo $row['sobit'].' '.$row['opsobit'].' '.$row['kogda'];
/*Рисуем табличку с данными и с кнопкой редактирования записей */
echo '<FORM ACTION="change.php" METHOD="POST">';
echo '<INPUT TYPE="hidden" NAME="ann" VALUE="'.$row['nn'].'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="asobit" VALUE="'.$row['sobit'].'" SIZE="1" MAXLENGTH="240">';
echo '<textarea cols="50" rows="10" name="aopsobit" id="contact_text" class="inputbox" hidden>'.$row['opsobit'].'</textarea>';
echo '<INPUT TYPE="hidden" NAME="akogda" VALUE="'.$row['kogda'].'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="name" VALUE="'.$name.'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="pass" VALUE="'.$pass.'" SIZE="1" MAXLENGTH="240"><INPUT TYPE="submit" VALUE="Изменить!"></FORM>';
echo "<BR>";
}
/*Рисуем форму для ввода нового события */
echo '<P><center><TABLE WIDTH = 400><TR><TD align = right><FORM ACTION="seeadd.php" METHOD="POST">Событие:<BR> <INPUT TYPE="text" NAME="asobit" SIZE="30" MAXLENGTH="240"><P>';
echo 'Описание события:<BR> <textarea cols="50" rows="10" name="aopsobit" id="contact_text" class="inputbox"></textarea><P>Когда произойдет:<BR>';
echo '<input type="text" name="akogda1" class="tcal" value="" SIZE="20" MAXLENGTH="19"><P>';
echo '<INPUT TYPE="text" NAME="akogda2" VALUE="'.$toddi0.'" SIZE="20" MAXLENGTH="19"><P><INPUT TYPE="hidden" NAME="name" VALUE="'.$name.'" SIZE="30" MAXLENGTH="240"><P>';
echo '<INPUT TYPE="hidden" NAME="pass" VALUE="'.$pass.'" SIZE="30" MAXLENGTH="240"><P><INPUT TYPE="submit" VALUE="Добавить!"></FORM></TD></TR></TABLE></CENTER>';
}
/* Закрыть соединение */
mysql_close();
?>
</center>
</body>
</html>
Под табличкой событий форма для ввода нового события и кнопка Добавить, при нажатии на нее открывается seeadd.php, событие добавляется и снова отображается табличка с новым событием и форма ввода. Чтобы все корректно заносилось, надо обратить внимание на формат даты и кодировку.
<html>
<head>
<title>Напоминалка по событиям на PHP</title>
<meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?>
<body>
<?
/* Этот скрипт получает переменные из see.php */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
$akogda=$akogda1.' '.$akogda2
$userstable = "usvers";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE name = '".$name."' and adres = '".$pass."' ";
$res = mysql_query($query) or die(mysql_error());
$name = mysql_real_escape_string($name);
$adres = mysql_real_escape_string($adres);
$number1 = mysql_num_rows($res);
if ($number1 == 0) {
echo 'Пользователь '.$name." не найден либо пароль не верен!<BR><BR>";
} else {
/* Таблица MySQL, в которой хранятся данные */
$userstable = "count1";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$name = mysql_real_escape_string($name);
$asobit = mysql_real_escape_string($asobit);
$aopsobit = mysql_real_escape_string($aopsobit);
$akogda = mysql_real_escape_string($akogda);
$query = "SELECT * FROM $userstable";
$res1 = mysql_query($query);
while ($row = mysql_fetch_row($res1))
$nn=$row[0]+1;
$query = "UPDATE $userstable SET nn=$nn";
mysql_query($query) or die(mysql_error());
/* Таблица MySQL, в которой хранятся данные */
$userstable = "sobbit";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
/* составить запрос для вставки информации о событии в таблицу */
$query = "INSERT INTO $userstable VALUES('$nn', '$name','$asobit','$aopsobit','$akogda' )";
/* Выполнить запрос. Если произойдет ошибка - вывести ее. */
mysql_query($query) or die(mysql_error());
echo "Информация о событии занесена в базу данных.";
?>
<P>
<P>
<?
echo 'Записи пользователя '.$name."<BR><BR>";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE usver = '".$name."' ";
$res = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($res)) {
echo $row['sobit'].' '.$row['opsobit'].' '.$row['kogda'];
echo '<FORM ACTION="change.php" METHOD="POST">';
echo '<INPUT TYPE="hidden" NAME="ann" VALUE="'.$row['nn'].'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="asobit" VALUE="'.$row['sobit'].'" SIZE="1" MAXLENGTH="240">';
echo '<textarea cols="50" rows="10" name="aopsobit" id="contact_text" class="inputbox" hidden>'.$row['opsobit'].'</textarea>';
echo '<INPUT TYPE="hidden" NAME="akogda" VALUE="'.$row['kogda'].'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="name" VALUE="'.$name.'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="pass" VALUE="'.$pass.'" SIZE="1" MAXLENGTH="240"><INPUT TYPE="submit" VALUE="Изменить!"></FORM>';
echo "<BR>";
}
echo '<P><center><TABLE WIDTH = 400><TR><TD align = right><FORM ACTION="seeadd.php" METHOD="POST">Событие:<BR> <INPUT TYPE="text" NAME="asobit" SIZE="30" MAXLENGTH="240"><P>';
echo 'Описание события:<BR> <textarea cols="50" rows="10" name="aopsobit" id="contact_text" class="inputbox"></textarea><P>Когда произойдет:<BR>';
echo '<INPUT TYPE="text" NAME="akogda" SIZE="20" MAXLENGTH="19"><P><INPUT TYPE="hidden" NAME="name" VALUE="'.$name.'" SIZE="30" MAXLENGTH="240"><P>';
echo '<INPUT TYPE="hidden" NAME="pass" VALUE="'.$pass.'" SIZE="30" MAXLENGTH="240"><P><INPUT TYPE="submit" VALUE="Добавить!"></FORM></TD></TR></TABLE></CENTER>';
}
/* Закрыть соединение */
mysql_close();
?>
</center>
</body>
</html>
В табличке у нас кнопка Изменить открывает change.php с формой изменения введенной ранее записи.
<html>
<head>
<title>Напоминалка по событиям на PHP</title>
<meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?>
<body>
<?
/* Этот скрипт получает переменные из see.php */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
$userstable = "usvers";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE name = '".$name."' and adres = '".$pass."' ";
$res = mysql_query($query) or die(mysql_error());
$name = mysql_real_escape_string($name);
$adres = mysql_real_escape_string($adres);
$number1 = mysql_num_rows($res);
if ($number1 == 0) {
echo 'Пользователь '.$name." не найден либо пароль не верен!<BR><BR>";
} else {
echo '<FORM ACTION="seechange.php" METHOD="POST">';
echo '<INPUT TYPE="hidden" NAME="ann" VALUE="'.$ann.'" SIZE="1" MAXLENGTH="240"><P>';
echo '<INPUT TYPE="text" NAME="asobit" VALUE="'.$asobit.'" SIZE="30" MAXLENGTH="240"><P>';
echo '<textarea cols="50" rows="10" name="aopsobit" id="contact_text" class="inputbox">'.$aopsobit.'</textarea><P>';
echo '<INPUT TYPE="text" NAME="akogda" VALUE="'.$akogda.'" SIZE="20" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="name" VALUE="'.$name.'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="pass" VALUE="'.$pass.'" SIZE="1" MAXLENGTH="240"><P><INPUT TYPE="submit" VALUE="Сохранить!"></FORM>';
}
/* Закрыть соединение */
mysql_close();
?>
</center>
</body>
</html>
Изменяем событие, и нажимаем Сохранить, после чего открывается seechange.php, новая информации о событии сохраняется.
<html>
<head>
<title>Напоминалка по событиям на PHP</title>
<meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?>
<body>
<?
/* Этот скрипт получает переменные из change.php */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
$userstable = "usvers";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE name = '".$name."' and adres = '".$pass."' ";
$res = mysql_query($query) or die(mysql_error());
$name = mysql_real_escape_string($name);
$adres = mysql_real_escape_string($adres);
$number1 = mysql_num_rows($res);
if ($number1 == 0) {
echo 'Пользователь '.$name." не найден либо пароль не верен!<BR><BR>";
} else {
/* Таблица MySQL, в которой хранятся данные */
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$name = mysql_real_escape_string($name);
$asobit = mysql_real_escape_string($asobit);
$aopsobit = mysql_real_escape_string($aopsobit);
$akogda = mysql_real_escape_string($akogda);
/* Таблица MySQL, в которой хранятся данные */
$userstable = "sobbit";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
/* составить запрос для изменения информации в таблице */
$query = "UPDATE $userstable SET sobit='".$asobit."',opsobit='".$aopsobit."',kogda='".$akogda."' WHERE nn=$ann";
/* Выполнить запрос. Если произойдет ошибка - вывести ее. */
mysql_query($query) or die(mysql_error());
echo "Информация о событии изменена.";
?>
<P>
<P>
<?
echo 'Записи пользователя '.$name."<BR><BR>";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE usver = '".$name."' ";
//$query = "SELECT * FROM $userstable";
$res = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($res)) {
echo $row['sobit'].' '.$row['opsobit'].' '.$row['kogda'];
echo '<FORM ACTION="change.php" METHOD="POST">';
echo '<INPUT TYPE="hidden" NAME="ann" VALUE="'.$row['nn'].'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="asobit" VALUE="'.$row['sobit'].'" SIZE="1" MAXLENGTH="240">';
echo '<textarea cols="50" rows="10" name="aopsobit" id="contact_text" class="inputbox" hidden>'.$row['opsobit'].'</textarea>';
echo '<INPUT TYPE="hidden" NAME="akogda" VALUE="'.$row['kogda'].'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="name" VALUE="'.$name.'" SIZE="1" MAXLENGTH="240">';
echo '<INPUT TYPE="hidden" NAME="pass" VALUE="'.$pass.'" SIZE="1" MAXLENGTH="240"><INPUT TYPE="submit" VALUE="Изменить!"></FORM>';
echo "<BR>";
}
echo '<P><center><TABLE WIDTH = 400><TR><TD align = right><FORM ACTION="seeadd.php" METHOD="POST">Событие:<BR> <INPUT TYPE="text" NAME="asobit" SIZE="30" MAXLENGTH="240"><P>';
echo 'Описание события:<BR><textarea cols="50" rows="10" name="aopsobit" id="contact_text" class="inputbox"></textarea>';
echo '<P>Когда произошло:<BR> <INPUT TYPE="text" NAME="akogda" SIZE="20" MAXLENGTH="19"><P><INPUT TYPE="hidden" NAME="name" VALUE="'.$name.'" SIZE="30" MAXLENGTH="240"><P>';
echo '<INPUT TYPE="hidden" NAME="pass" VALUE="'.$pass.'" SIZE="30" MAXLENGTH="240"><P><INPUT TYPE="submit" VALUE="Добавить!"></FORM></TD></TR></TABLE></CENTER>';
}
/* Закрыть соединение */
mysql_close();
?>
</center>
</body>
</html>
Снова отображается табличка с измененным событием и форма ввода.
Файл prover.php, который ставится в cron, и по времени проверяет базу на предмет просроченного событий, если находит - высылает на e-mail пользователя напоминание.
<html>
<head>
<title>Напоминалка по событиям на PHP</title>
<meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?>
<body>
<?
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
$today = getdate();
$toddi = "$today[year]-$today[mon]-$today[mday] $today[hours]:$today[minutes]:00";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "sobbit";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable";
$res = mysql_query($query) or die(mysql_error());
while ($row=mysql_fetch_array($res)) {
if ($row['kogda'] < $toddi ) {
$to = $row['usver'];
$subject = $row['sobit'];
$message = $row['opsobit']."<br />".$row['kogda']."<br />Внимание!<br /><i>Это письмо отправлено <b>роботом</b> и отвечать на него не нужно!</i>";
$headers = "From: ".$row['usver']."<".$row['usver'].">\r\nContent-type: text/html; charset=windows-1251 \r\n";
mail ($to, $subject, $message, $headers);
} else {
}
}
/* Закрыть соединение */
mysql_close();
?>
</center>
</body>
</html>
И напоследок, форма, которая высылает забытый пароль пользователю на e-mail.
Форма ввода логина для напоминания забытого пароля, , файл forgot.php.
<html> <head> <title>Напоминалка по событиям на PHP/title> <meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?> <body> <P> <center> <TABLE WIDTH = 400><TR><TD align = right> <FORM ACTION="forgot1.php" METHOD="POST"> E-mail:<BR> <INPUT TYPE="text" NAME="name" SIZE="30" MAXLENGTH="240"> <P> <INPUT TYPE="submit" VALUE="Выслать"> </FORM> </TD></TR></TABLE></CENTER> </center> </body> </html>
При нажатии на кнопку "Выслать" запускается файл forgot1.php, который высылает пароль на e-mail пользователя.
<html>
<head>
<title>Напоминалка по событиям на PHP</title>
<meta https-equiv=”Content-Type” content=”text/html; charset=windows-1251?>
<body>
<?
/* Этот скрипт получает переменные из forgot.php */
/* Переменные для соединения с базой данных */
$hostname = "localhost";
$username = "user";
$password = "password";
$dbName = "database";
$userstable = "usvers";
/* создать соединение */
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
/* выбрать базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName) or die(mysql_error());
$query = "SELECT * FROM $userstable WHERE name = '".$name."' ";
$res = mysql_query($query) or die(mysql_error());
$name = mysql_real_escape_string($name);
$adres = mysql_real_escape_string($adres);
$number1 = mysql_num_rows($res);
$row=mysql_fetch_array($res);
if ($number1 == 0) {
echo 'Пользователь '.$name." не найден либо пароль не верен!<BR><BR>";
} else {
$to = $row['name'];
$subject = 'Восстановление пароля для '.$row['name'];
$message = 'Логин: '.$row['name']."<br /><b>Пароль: </b>".$row['adres'];
$headers = "From: ".$row['name']."<".$row['name'].">\r\nContent-type: text/html; charset=windows-1251 \r\n";
mail ($to, $subject, $message, $headers);
echo "Информация отправлена на указанный адрес.";
}
/* Закрыть соединение */
mysql_close();
?>
<a href="login.php" >Войти</a>
</center>
</body>
</html>
В результате получается вот такая простая база данных по событиям с функцией уведомления о событиях на e-mail пользователя:
Дополнительно список событий можно оформить в виде таблички, еще можно добавить кнопку "Удалить" в таблицу для удаления строк, сделать возможность "закрывать" события, нажимая на ссылку сразу в письме с напоминанием, сделать какое-нибудь шифрование пароля, который передается через адресную строку.
А так можно представленные выше куски кода вставить в шаблоны страниц, чтобы красиво было, залить на сайт и будет он-лайн напоминалка о событиях на e-mail.
Скачать исходники можно по ссылке https://ds-release.ru/bazaphp.rar
