HB/game/jeu/envoyer.php

52 lines
2.1 KiB
PHP

<?php
if(!defined('INDEX')) { header('Location: ../'); exit; }
$page = 'envoyer';
$titre = 'Envoyer un message';
if (!empty($_POST['objet']) && !empty($_POST['nom']) && !empty($_POST['message'])) {
$utils = explode(';', gpc('nom', 'post'));
$nbutil = count($utils);
$time = time();
$message = htmlspecialchars(gpc('message', 'post'));
$objet = htmlspecialchars(gpc('objet', 'post'));
if (strlen($message) > 9999) erreur('Le contenu de votre message est trop long. Limite : 9 999 caractères.');
$bdd->connexion();
$bdd->escape($message);
$bdd->escape($objet);
$bdd->escape($pseudo);
$introuv = array();
for($i = 0; $i < $nbutil; $i++){
$util = trim($utils[$i]);
if (empty($util)) continue;
$bdd->escape($util);
if ($util != $planete->pseudo && $env = $bdd->unique_query("SELECT id, pseudo, mail, envoyerMail FROM $table_user WHERE pseudo = '$util';")) {
$bdd->query("INSERT INTO $table_mail (destinataire, expediteur, sujet, contenu, temps) VALUES(".$env['id'].", '$id_user', '$objet', '$message', '$time');");
if ($env["envoyerMail"] >= 1 && !empty($env["mail"])) send_mail($env["mail"], 'Nouveau message privé', 'Bonjour '.$env["pseudo"].',<br /><br />Un nouveau message privé vous a été envoyé dans la galaxie '.$config['serveur_name']);
}
else $introuv[] = htmlentities($util);
}
$bdd->deconnexion();
if (!empty($introuv[0])) erreur('Impossible de trouver le/les destinataire(s) suivant(s) : '.implode(', ', $introuv).'.<br />Les autres ont bien reçu votre message.', "red", '?p=envoyer');
else erreur('Votre message a été envoyé avec succès.', "green", '?p=messagerie');
}
$amis = array();
$amisn = array();
$bdd->connexion();
foreach($planete->amis as $ami) {
$res = $bdd->unique_query("SELECT pseudo FROM $table_user WHERE id = ".$ami.";");
if ($res != false) {
$amis[] = $res['pseudo'];
$amisn[] = $ami;
}
}
$bdd->deconnexion();
$template->assign('amis', $amis);
$template->assign('amisn', $amisn);
if (isset($_GET['d'])) $template->assign('destinataire', gpc('d'));
if (isset($_GET['o'])) $template->assign('objet', gpc('o'));
?>