Déplacement de la gestion des préfixes dans la base + préparation des requêtes SQL SELECT + nettoyage de code
This commit is contained in:
@@ -7,15 +7,38 @@
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/bdd/connexion.php");
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/sessions/privileges.php");
|
||||
|
||||
/**
|
||||
* Fonction listant le préfixe de l'utilisateur courant.
|
||||
*/
|
||||
function retournePrefixeUtilisateurPostfix($pdo) {
|
||||
try {
|
||||
$req = 'SELECT prefixe FROM postfix_utilisateurs WHERE utilisateur=:utilisateur';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':utilisateur',$_SESSION['pseudo_utilisateur']);
|
||||
$sql->execute();
|
||||
|
||||
$prefixe_utilisateur=$sql->fetchAll();
|
||||
return $prefixe_utilisateur[0]['prefixe'];
|
||||
}
|
||||
catch (\Exception $e) {
|
||||
die ("Erreur de requête de selection des alias virtuels : ".$e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fonction listant les alias virtuels.
|
||||
*/
|
||||
function listeAliasVirtuelsPostfix($pdo) {
|
||||
try {
|
||||
// Filtre des alias virtuels de l'utilisateur courant
|
||||
$req = $pdo->query('SELECT * FROM postfix_alias_virtuels WHERE destination='."\"$_SESSION[pseudo_utilisateur]\"");
|
||||
$req = 'SELECT * FROM postfix_alias_virtuels WHERE destination=:destination';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':destination',$_SESSION['pseudo_utilisateur']);
|
||||
$sql->execute();
|
||||
|
||||
$liste_alias_virtuels = array();
|
||||
foreach ($req as $alias_virtuels_bdd => $alias_virtuels) {
|
||||
foreach ($sql->fetchAll() as $alias_virtuels_bdd => $alias_virtuels) {
|
||||
array_push($liste_alias_virtuels,$alias_virtuels);
|
||||
}
|
||||
return $liste_alias_virtuels;
|
||||
@@ -35,17 +58,7 @@ function ajoutAliasVirtuelsPostfix($pdo) {
|
||||
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':courriel',$_SESSION['pseudo_utilisateur']);
|
||||
|
||||
// Si l'utilisateur spécifie un préfixe à son alias, un "." est ajouté pour lé séparé du reste afin d'avoir "préfixe.alias@NdD"
|
||||
if (!empty($_POST['prefix_alias'])) {
|
||||
$separateur_prefix_alias=".";
|
||||
}
|
||||
// Permet de ne pas renvoyer le message "Notice: Undefined variable: separateur_prefix_alias" lors de lexécution du "bindValue" suivant
|
||||
else {
|
||||
$separateur_prefix_alias="";
|
||||
}
|
||||
|
||||
$sql->bindValue(':alias_virtuel',$_POST['prefix_alias'].$separateur_prefix_alias.$_POST['nom_alias']."@".$_POST['choix_domaine_alias']);
|
||||
$sql->bindValue(':alias_virtuel',retournePrefixeUtilisateurPostfix($pdo).$_POST['nom_alias']."@".$_POST['choix_domaine_alias']);
|
||||
$sql->execute();
|
||||
|
||||
if($sql->rowCount() == 1){
|
||||
@@ -116,15 +129,13 @@ function modifEtatAliasVirtuelsPostfix($pdo) {
|
||||
*/
|
||||
function supprAliasVirtuelsPostfix($pdo) {
|
||||
try {
|
||||
//$req = $pdo->query('DELETE FROM postfix_alias_virtuels WHERE id='."$_GET[supprAliasVirtuel]".' AND courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)');
|
||||
$req='DELETE FROM postfix_alias_virtuels WHERE id=:id_alias_virtuel AND destination=:pseudo_utilisateur';
|
||||
//$req='DELETE FROM postfix_alias_virtuels WHERE id=:id_alias_virtuel AND courriel=:pseudo_utilisateur||(SELECT domaine FROM postfix_domaines WHERE defaut=1)';
|
||||
|
||||
$sql=$pdo->prepare($req);
|
||||
//$sql->bindParam(':id',$_GET['supprAliasVirtuel'],':pseudo_utilisateur',$_SESSION['pseudo_utilisateur]',':@','@');
|
||||
$sql->bindValue(':id_alias_virtuel',$_GET['supprAliasVirtuel']);
|
||||
//$sql->bindValue(':pseudo_utilisateur',$_SESSION['pseudo_utilisateur']."@");
|
||||
$sql->bindValue(':pseudo_utilisateur',$_SESSION['pseudo_utilisateur']);
|
||||
$sql->execute();
|
||||
|
||||
if($sql->rowCount() == 1){
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user