Bienvenue dans le projet Task Manager ! Cette application permet aux utilisateurs de gérer leurs tâches et de recevoir des rappels par courrier électronique pour les tâches planifiées dans la journée. Il est construit en utilisant PHP, MySQL et PHPMailer.
Clonez le dépôt :
git clone https://github.com/faezedrx/task-manager-php.git
cd task-manager-php
Dépendances d'installation :
composer require phpmailer/phpmailer
Configurer la base de données :
bamboos1_services_portf.sql
fourni dans le référentiel.config.php
avec vos informations d'identification de base de données.Configurer les paramètres de messagerie :
email.php
avec les détails de votre serveur SMTP. Démarrez l'application :
Authentification utilisateur :
Gérer les tâches :
Les rappels par e-mail sont gérés par PHPMailer. Assurez-vous que vos paramètres SMTP dans email.php
sont correctement configurés :
<?php
require ' PHPMailer/src/Exception.php ' ;
require ' PHPMailer/src/PHPMailer.php ' ;
require ' PHPMailer/src/SMTP.php ' ;
use PHPMailer PHPMailer PHPMailer ;
use PHPMailer PHPMailer Exception ;
// require 'vendor/autoload.php';
class Mail {
private static $ instance = null ;
private $ mail ;
private function __construct () {
$ this -> mail = new PHPMailer ( true );
$ this -> configureSMTP ();
}
private function configureSMTP () {
// تنظیمات سرور SMTP
$ this -> mail -> isSMTP ();
$ this -> mail -> Host = ' your-smtp-server ' ;
$ this -> mail -> SMTPAuth = true ;
$ this -> mail -> Username = ' [email protected] ' ;
$ this -> mail -> Password = ' your-email-password ' ;
$ this -> mail -> SMTPSecure = PHPMailer:: ENCRYPTION_STARTTLS ;
$ this -> mail -> Port = 587 ;
}
public static function getInstance () {
if ( self :: $ instance == null ) {
self :: $ instance = new Mail ();
}
return self :: $ instance ;
}
public function getMailer () {
return $ this -> mail ;
}
}
function sendEmail ( $ to , $ subject , $ body ) {
$ mailInstance = Mail:: getInstance ()-> getMailer ();
try {
// تنظیمات گیرنده
$ mailInstance -> setFrom ( ' [email protected] ' , ' Task Management ' );
$ mailInstance -> addAddress ( $ to );
// تنظیمات محتوا
$ mailInstance -> isHTML ( true );
$ mailInstance -> Subject = $ subject ;
$ mailInstance -> Body = $ body ;
// ارسال ایمیل
$ mailInstance -> send ();
return true ;
} catch ( Exception $ e ) {
error_log ( " Email could not be sent. Mailer Error: { $ mailInstance -> ErrorInfo }" );
return false ;
}
}
?>
Les contributions sont les bienvenues ! Veuillez créer une pull request ou ouvrir un ticket pour discuter de tout changement.
Si vous avez des questions ou avez besoin d'aide supplémentaire, n'hésitez pas à nous contacter à mon email : [email protected].