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

PHP & Base de données Discussion :

Envoi mail avec variable venant d'un textarea [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 77
    Par défaut Envoi mail avec variable venant d'un textarea
    Salut,

    J'ai un formulaire qu'on rempli sur une de mes pages et dans ce formulaire j'ai plusieurs champs de type text et aussi un champs de type textarea.

    Suite au remplissage du formulaire, cela m'envoi un mail avec les infos du formulaire.

    ça marche très bien mais je voulais savoir si c'était normal que les sauts de ligne du textarea (ceux que l'on a mis en remplissant ce champs) ne sont pas pris en compte sur le mail.

    --------------

    Exemple :

    Dans le champs textarea on met :

    Bonsoir

    Je voudrais connaître les endroits où l'on peut pratiquer le K1 à Paris ou dans les Hauts-de-Seine

    D'avance merci

    -------------- il y a donc 5 lignes au total --------------

    Quand je reçois mon mail j'ai :
    Message : Bonsoir Je voudrais connaître les endroits où l'on peut pratiquer le K1 à Paris ou dans les Hauts-de-Seine D'avance merci

    Tout est collé !

    Je récupère mon champs avec ce code :


    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $message=addslashes(htmlentities($_POST['message']));

    Puis envoi du mail avec :


    Code php : 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
    $Message ='
    <html>
         <head>
              <title>Site Plan&egrave;te MMA - K-1</title>
         </head>
         <body>
              <span style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px;">
              <p>Salut,</p>
              <p>Le <b>'.$date.'</b> &agrave; <b>'.$heure.'</b>, tu as &eacute;t&eacute; contact&eacute; par <b>'.stripslashes($Nom).'</b> du site.</p>
              <p><b>Son Email :</b> <span style="color:#FF0000;">'.$Email.'</span></p>
              <p><b>Objet :</b> <span style="color:#FF0000;">'.stripslashes($Objet).'</span></p>
              <p><b>Message :</b> '.stripslashes($Message).'</p>
              <p>PS : Ne pas r&eacute;pondre &agrave; ce mail</p>
              <p>A bient&ocirc;t sur le site !<br />
              <p>L\'Equipe du Site Plan&egrave;te MMA - K-1</p>
              <p>Site Web : <a href="http://www.jjb-france.com">www.jjb-france.com</a></p></span>
         </body>
    </html>';

    Est ce qu'il y a quelque chose à faire pour garder les sauts de ligne où est ce le fonctionnement normal ?

    Merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Utilise la fonction nl2br() pour convertir les retours chariots du textara en retour a la ligne HMTL.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé Avatar de Space Cowboy
    Homme Profil pro
    chomeur
    Inscrit en
    Avril 2005
    Messages
    496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : chomeur

    Informations forums :
    Inscription : Avril 2005
    Messages : 496
    Par défaut
    Ma page de contact :
    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
     
    <?php 
     
    if(!isset($_POST['send_ajout']))	$send_ajout='';
    else								$send_ajout=quote_smart($_POST['send_ajout']);	//==form_ajout si forumlaire envoyé
     
    	if(!isset($_POST['nom']))		$nom='';
    	else							$nom=$_POST['nom'];
    	if(!isset($_POST['mail']))		$mail='';
    	else							$mail=$_POST['mail'];
    	if(!isset($_POST['titre']))	$titre='';
    	else							$titre=$_POST['titre'];
    	if(!isset($_POST['texte']))	$texte='';
    	else							$texte=$_POST['texte'];
     
    ?>
     
    Vous pouvez me contacter en utilisant ce formulaire.
    <br />
     
    <?php
    if($send_ajout=='ok')
    {
    	echo '<h2><span class="alerte">';
    	$sql=sprintf('INSERT INTO `'.$cfg['BDD_mess'].'` (`mess_nom`, `mess_date`, `mess_email`, `mess_titre`, `mess_text`)
    				VALUES ("%s", NOW(), "%s", "%s", "%s");',
    					quote_smart($nom), 	quote_smart($mail), quote_smart($titre), quote_smart($texte));	
     
    	if($db_s->query($sql))
    	{
    		echo 'Message envoyé !';
    	}
    	else		echo 'Erreur !';
    	echo '</span></h2>';
     
    }
    ?>
     
    <form method="post" action="">
    	<table>
    	<tbody>
    		<tr>
    			<td width="75px" align="center">Nom</td>
    			<td><input type="text" size="40" name="nom" value="<?php echo $nom; ?>" /></td>
    		</tr>
    		<tr>
    			<td align="center">Mail</td>
    			<td><input type="text" size="40" name="mail" value="<?php echo $mail; ?>" /></td>
    		</tr>
    		<tr>
    			<td align="center">Objet</td>
    			<td><input type="text" name="titre" maxlength="100" size="70" value="<?php echo $titre; ?>" /></td>
    		</tr>
    		<tr>
    			<td align="center">Message *</td>
    			<td><textarea rows="10" cols="50" name="texte"><?php echo $texte; ?></textarea></td>
    		</tr>
    	</tbody>
    	<tfoot>
    		<tr>
    			<td align="center" colspan="2"><input type="hidden" name="send_ajout" value="ok" /> <input type="submit" name="submit" value="Hop !" />
    											</td>
    		</tr>
    	</tfoot>
    	</table>
    	<br /> * : seul champ obligatoire.
    </form>

    Affichage dans la section adminisitration. J'ai la même mise en forme que dans le formulaire.

    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
     
    <?php
    if(Droit('admin'))
    {
    	if(!isset($_GET['send_IDsuppr']))	$send_IDsuppr='';
    	else								$send_IDsuppr=quote_smart($_GET['send_IDsuppr']);
     
    	$sql='';
     
    	// SUPRESSION
    	// ====================================================================================================================
    	if($send_IDsuppr!='')
    	{
    		$sql='DELETE FROM `'.$cfg['BDD_mess'].'` WHERE `mess_id`='.$send_IDsuppr;
    		$db_s->query($sql);
    		echo 'Le message <strong>'.$send_IDsuppr.'</strong> à correctement été supprimé.<br /><br />';
    	}
     
    ?>
    	<table class="tableau">
    	<thead>
    		<tr>
    			<th class="th_g">ID</th>
    			<th>Date</th>
    			<th>Auteur</th>
    			<th>Titre</th>
    			<th>Mail</th>
    			<th>Messsage</th>
    			<th width="32px">X</th>
    		</tr>
    	</thead>
    	<tbody>
    	<?php
    		$sql='SELECT * FROM `'.$cfg['BDD_mess'].'` ORDER BY `mess_date` DESC';
    		$db_s->query($sql);
    		while ($db_s->next_record())
    		{
    			echo '<tr>';
    				echo '<td>'.$db_s->f('mess_id').'</td>';
    				echo '<td>'.$db_s->f('mess_date').'</td>';
    				echo '<td>'.$db_s->f('mess_nom').'</td>';
    				echo '<td>'.$db_s->f('mess_titre').'</td>';
    				echo '<td>'.$db_s->f('mess_email').'</td>';
    				echo '<td>'.nl2br($db_s->f('mess_text')).'</td>';
    				echo '<td><a href="index.php?page='.$cfg_admin['mess.liste'].'&amp;send_IDsuppr='.$db_s->f('mess_id').'" onclick="return confirm(\'Voulez-vous réellement supprimer cet élément ? \n Cette opération est irréversible !\');"><img src="../image/interface/ico_drop.png" /></a></td>';
    			echo '</tr>';
    		}
    		?>
    	</tbody>
    	</table>
    <?php
    }
    ?>

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 77
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Utilise la fonction nl2br() pour convertir les retours chariots du textara en retour a la ligne HMTL.
    Merci bien, je ne connaissais pas cette fonction ça marche parfaitement !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [javamail] envoi mail avec message en pièce jointe
    Par k4eve dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 16/11/2007, 11h17
  2. [VB]Bp envoie mail avec piéce jointe
    Par jm1213 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 17/02/2006, 20h55
  3. [Oracle 10g] Envoi mail avec PJ à une heure donnée
    Par djoule6 dans le forum Oracle
    Réponses: 5
    Dernier message: 25/10/2005, 11h51
  4. Envoi mail avec Outlook accusé de réception
    Par KapoueMan dans le forum Access
    Réponses: 2
    Dernier message: 14/04/2005, 10h41
  5. envoi mail avec piece jointe fichier excel
    Par flogreg dans le forum ASP
    Réponses: 12
    Dernier message: 20/12/2004, 16h02

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