IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Envoyer un message à l'ouvrture d'une discussion


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Envoyer un message à l'ouvrture d'une discussion
    BOnjour à tous,

    J'aimerais envoyer un email à toutes les personnes lorsque quelqu'un crée une nouvelle discussion sur le forum.
    J'ai une base de données phpmyadmin avec toutes les adresses emails.
    Si quelqu'un pouvait m'aider, merci.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    <?php include("inc/front.inc.php"); ?>
    <?
    $page_accueil = false;
    $css_page = "marron";
    ?>
    <?php include("inc/header.php"); ?>
    <?php include("inc/site-haut.php"); ?>
    <div id="divConteneurContenu">
    	<h1 id="h1TitrePage">Forum FLI</h1>
    	<br>
    	<!--<div id="divConteneurTraitVertical">-->
    <?php
    // on teste si le formulaire a été soumis
    if (isset ($_POST['go']) && $_POST['go']=='Poster') {
    	// on teste la déclaration de nos variables
    	if (!isset($_POST['auteur']) || !isset($_POST['titre']) || !isset($_POST['message'])){
    		$erreur = 'Les variables nécessaires au script ne sont pas définies.';
    	}
    	else{
    		// on teste si les variables ne sont pas vides
    		if (empty($_POST['auteur']) || empty($_POST['titre']) || empty($_POST['message'])){
    			$erreur = 'Au moins un des champs est vide.';
    		}
    		// si tout est bon, on peut commencer l'insertion dans la base
    		else{
    			// on se connecte à notre base
    			// on calcule la date actuelle
    			$date = date("Y-m-d H:i:s");
    			// préparation de la requête d'insertion (pour la table forum_sujets)
    			$sql = 'INSERT INTO forum_sujets VALUES("", "'.mysql_escape_string($_POST['auteur']).'", "'.mysql_escape_string($_POST['titre']).'", "'.$date.'")';
    			// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
    			mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
    			// on recupère l'id qui vient de s'insérer dans la table forum_sujets
    			$id_sujet = mysql_insert_id();
    			// lancement de la requête d'insertion (pour la table forum_reponses
    			$sql = 'INSERT INTO forum_reponses VALUES("", "'.mysql_escape_string($_POST['auteur']).'", "'.mysql_escape_string($_POST['message']).'", "'.$date.'", "'.$id_sujet.'")';
    			// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
    			mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
    			// on ferme la connexion à la base de données
    			mysql_close();
    			// on redirige vers la page d'accueil
    			//header('location: forum.php');
    ?>
    	<SCRIPT LANGUAGE="JavaScript">
    		document.location.href="membre.php" /* vous pouvez aussi mettre http://www.monsite.com */
    	</SCRIPT>
    <?php
    			// on termine le script courant
    			exit;
    		}
    	}
    }
    ?>
    	<html>
    	<head>
    		<title>Insertion d'un nouveau sujet</title>
    	</head>
    	<body>
    		<!-- on fait pointer le formulaire vers la page traitant les données -->
    		<form action="insert_sujet2.php" method="post">
    			<br>
    			<br>
    			<table align="center">
    			<tr><td>
    			<span class="gras">Auteur :</span>
    			</td><td>
    			<input type="text" name="auteur" maxlength="30" size="50" value="<?php if (isset($_POST['auteur'])) echo htmlentities(trim($_POST['auteur'])); ?>">
    			</td></tr><tr><td>
    			<span class="gras">Titre :</span>
    			</td><td>
    			<input type="text" name="titre" maxlength="50" size="50" value="<?php if (isset($_POST['titre'])) echo stripslashes(htmlentities(trim($_POST['titre']))); ?>">
    			</td></tr><tr><td>
    			<span class="gras">Message :</span>
    			</td><td>
    			<textarea name="message" cols="50" rows="10"><?php if (isset($_POST['message'])) echo stripslashes(htmlentities(trim($_POST['message']))); ?></textarea>
    			</td></tr><tr><td><td align="right">
    			<input type="submit" name="go" value="Poster">
    			</td></tr></table>
    		</form>
    <?php
    if (empty($_POST['titre'])){
            $message;die();
    }
    // sinon c'est ok => on continue
    foreach($_POST as $index => $valeur){
    	$index = stripslashes(trim($valeur));
    }
    $result="XXXX@yahoo.fr;XXXXX@yahoo.fr";
    // Envoi du mail client
    //-----------------------
    //Préparation de l'entête du mail:
    $mail_entete  = "MIME-Version: 1.0\r\n";
    $mail_entete .= "From: accueil@XXXXX.com\r\n";
    $mail_entete .= 'Content-Type: text/plain; charset="iso-8859-1"';
    $mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";
    $mail_entete .= 'X-Mailer:PHP/' . phpversion()."\r\n";
    // préparation du corps du mail
    $texte  ="\r\n";
    $texte .="Bonjour, \r\n";
    $texte .="\r\n";
    $texte .="Une nouvelle discussion sur le forum vient d'être crée.\r\n";
    $texte .="Le sujet est : $titre.\r\n";
    $texte .="Si vous désirez y accéder, voici le lien: http://www.XXXX.com/connect_forum2.php\r\n";
    $texte .="XXXX, vous remercie pour votre confiance et votre visite sur notre site.\r\n";
    $texte .="A très bientôt.\r\n";
    $texte .="\r\n";
    $texte .="Vous pouvez nous contacter directement : XXXX\r\n";
    $texte .="\r\n";
    $texte .="Sinon par mail, cliquez ici : accueil@XXXX.com \r\n";
    $mail_ok = mail("$result","discussion sur le forum",$texte,$mail_entete);
    if ($ok_mail){
    	"mail parti";
    }
    else{
    	"mail,  pas parti";
    }
    if ($mail_ok){
    	"mail client parti";
    } else{
    	"mail client  pas parti";
    }
    ?>
    <?php
    // on affiche les erreurs éventuelles
    if (isset($erreur)) echo '<br /><br />',$erreur;
    ?>
    	<SCRIPT LANGUAGE="JavaScript">
    		document.location.href="membre.php" /* vous pouvez aussi mettre http://www.monsite.com */
    	</SCRIPT>
    	</body>
    	</html>
    <?php include("inc/site-bas.php"); ?>

  2. #2
    Membre éprouvé Avatar de Shuty
    Homme Profil pro
    Ingénieur en développement
    Inscrit en
    Octobre 2012
    Messages
    630
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur en développement
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 630
    Points : 1 174
    Points
    1 174
    Par défaut
    Je me permet d'ajouter ma petite graine, mais ce genre de features n'est pas forcément très bien perçus par les users. Les mail récurrents, il n'y a rien de pire pour souler les utilisateurs et donc les faire fuir...

    $message;die();
    Quelle en est l'utilité de la var $message ?

    Ou es tu bloqué ?
    Agence web Dim'Solution, créateur de solutions numériques
    Sites internet, ecommerce, logiciels, applications mobiles, référencement (SEO), plugin Prestashop, Magento, WordPress, Joomla!...

    Cours de trading gratuit | Envoyer des sms gratuitement | Envoyer des fax gratuitement | Plateforme de Fax à l'international

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 015
    Points : 182
    Points
    182
    Par défaut Envoyer un message lorsque quelqu'un ouvre une discussion sur le forum
    Oui tu as raison d'ajouter ta graine...et merci de le faire.
    Mais le forum ne compte qu'une 15 de personnes donc les nouvelles discussions sont peu importantes.
    La var $message sert à bloquer l'envoi si les données du formulaire ne sont pas remplies.
    Et je bloque sur le fait que je n'arrive pas à allée chercher les emails des personnes dans la base de données.
    Et ce que j'ai fais là ne marche pas....

Discussions similaires

  1. [Mail] Envoyer Un Message A Une Adresse Email
    Par kamga dans le forum Langage
    Réponses: 1
    Dernier message: 28/04/2006, 14h19
  2. Suppression de ses propres messages dans une discussion
    Par Kcirtap dans le forum Evolutions du club
    Réponses: 2
    Dernier message: 18/04/2006, 08h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo