Texte formulaire dans mysql retour chariot = <b
Posté : 22 févr. 2005, 10:45
par jean
le résultat de mon formulaire est envoyé par e-mail et les champs nom, e-mail, et texte sont insérés dans une base mysql.
Dans le champ texte les retours chariot se mettent sous la forme" <br />" et quand je demande le tableau des réponses, les <br /> apparaissent aussi.
merci de me donner un bon conseil
jean
Posté : 22 févr. 2005, 10:53
par Jerem'
Un peu de code pourrait nous aider

Posté : 22 févr. 2005, 11:08
par pascaltje
si je comprends le peu d'indice, les retours chariot sont transformés avant insertion et envoi des données.
Vérifie le script enter la récupération des données et leur insertion / envoi. ça doit se trouver dans ce coin là.
A+
Pascal qui lit entre les lignes
merci pour les réponses, un peu plus d'info
Posté : 23 févr. 2005, 15:59
par jean
mon formulaire et la relation à mysql a été faits avec "phpFormGen", un sript chouette.
Dans ma table mysql texte les retours chariot sont de la forme" <br / ".
j'ai réalisé un fichier php pour aller chercher les info sur ma base :
le résultat fait aussi apparaitre les " <br / "
<HTML>
<HEAD>
<TITLE> phpInfo.net </TITLE>
<STYLE>
BODY { font-family: Arial; font-size: 13px; color: #1C2D67 }
TD { font-family: Arial; font-size: 13px; color: #1C2D67 }
A {font-family:Arial;font-size:13px;color:#003FFF;text-decoration:none}
A:link {font-family:Arial;font-size:13px;color:#003FFF;font-weight:bold}
A:visited {font-family:Arial;font-size:13px;color:#003FFF;font-weight:bold}
A:hover {font-family:Arial;font-size:13px;color:#003FFF;font-weight:bold}
A.off {font-family:Arial;font-size:13px;color:#C0D780;font-weight:bold}
</STYLE>
</HEAD>
<BODY BGCOLOR="#9DAEE8">
<?php
$cfgHote = 'localhost';
$cfgBase = 'mara';
$cfgUser = 'root';
$cfgPass = '??';
$nom_table = 'form';
$champs= 'DATE_FORMAT(date, "%d/%m %H:%i") AS d, Nom, email, Tel, Message';
$cfg_nbres_ppage = 10;
$cfg_nb_pages= 10;
mysql_connect($cfgHote, $cfgUser, $cfgPass);
// on regarde si il faut rechercher des mots clés
$mots = str_replace('%', '', $mots);
$mots = str_replace('_', '', $mots);
$mots = trim($mots);
if ($mots != '')
{
$where = " WHERE Nom LIKE '%".addslashes($mots)."%' OR ";
$where .= "Message LIKE '%".addslashes($mots)."%'";
$criteres = "?mots=".urlencode($mots);
}
else
{
$where = '= latin1_column';
$criteres = "?";
// remplacer les retours chariot par des retours à la ligne
// simple pour tout le monde
$mots=nl2br($mots);
// supprimer les retour à la ligne d'un texte
$mots=str_replace(CHR(10),"",$mots);
// et celle là aussi :
$mots=str_replace(CHR(13),"",$mots);
}
// Recherche du nombre de lignes
$sql = 'SELECT count(*) ';
$sql .= 'FROM '.$nom_table;
$sql .= $where;
$resultat = mysql_db_query($cfgBase, $sql);
$enr = mysql_fetch_array($resultat);
if (($nbtotal = $enr[0]) == 0)
{
echo 'Aucune réponse trouvée';
}
else
{
if (!isset($debut)) $debut = 0;
// recherche des réponses
$sql = 'SELECT '.$champs.' ';
$sql .= 'FROM '.$nom_table.' ';
$sql .= $where;
$sql .= ' ORDER BY id';
$sql .= ' LIMIT '.$debut.','.$cfg_nbres_ppage;
$resultat = mysql_db_query($cfgBase, $sql);
$nbenr = mysql_num_rows($resultat);
// plage de réponses
$barre_nav = '<TABLE BORDER=0 WIDTH="100%" CELLPADDING=3 CELLSPACING=1>';
$barre_nav .= '<TR><TD BGCOLOR=#DCDCDC WIDTH="40%" ALIGN="left">';
$barre_nav .= 'Réponses <B>'.($debut + 1).'</B> à <B>'.($debut + $nbenr).'</B>';
$barre_nav .= ' sur <B>'.($nbtotal).'</B></TD>';
// barre de navigation
$barre_nav .= "<TD BGCOLOR=#FCFDDF ALIGN='left' WIDTH='60%'> ";
if ($nbtotal > $cfg_nbres_ppage)
{
$barre_nav .= barre_navigation($nbtotal, $nbenr,
$cfg_nbres_ppage,
$debut, $cfg_nb_pages,
$criteres);
}
$barre_nav .= "</TD></TR></TABLE>\n";
// affichage de la barre de navigation
echo $barre_nav;
// affichage des donn••es
$cpt = 0;
echo "<TABLE BORDER=0 CELLPADDING=1 CELLSPACING=1 WIDTH='100%'>";
while ($enr = mysql_fetch_array($resultat))
{
echo afficher_ligne($debut + $cpt + 1, $enr);
$cpt++;
}
echo "</TABLE>\n";
// 2me barre après les résultats si nécessaire
if ($nbtotal > $cfg_nbres_ppage && $cpt > ($cfg_nbres_ppage / 2))
{
echo $barre_nav;
}
}
// Zone de recherche
echo "<FORM METHOD=GET>\n";
echo "<B>Rechercher</B> ";
$mots = stripslashes(htmlspecialchars($mots));
echo "<INPUT TYPE='text' NAME='mots' VALUE=\"".$mots."\">";
echo " <INPUT TYPE='submit' VALUE='Go !'>";
echo "</FORM>\n";
// ------------------------------------------------------------------------
// barre_navigation
// ------------------------------------------------------------------------
function barre_navigation($nbtotal,
$nbenr,
$cfg_nbres_ppage,
$debut, $cfg_nb_pages,
$criteres)
{
// --------------------------------------------------------------------
$cfg_nb_pages= 10; // Nb de n de pages affichées dans la barre
$lien_on= ' <A HREF="{cible}">{lien}</A> ';
$lien_off= ' {lien} ';
// --------------------------------------------------------------------
$query= $criteres.'&debut=';
// début << .
// --------------------------------------------------------------------
if ($debut >= $cfg_nbres_ppage)
{
$cible = $query.(0);
$image = image_html('images/gauche_on.gif');
$lien = str_replace('{lien}', $image.$image, $lien_on);
$lien = str_replace('{cible}', $cible, $lien);
}
else
{
$image = image_html('images/gauche_off.gif');
$lien = str_replace('{lien}', $image.$image, $lien_off);
}
$barre .= $lien." <B>·</B>";
// précédent < .
// --------------------------------------------------------------------
if ($debut >= $cfg_nbres_ppage)
{
$cible = $query.($debut-$cfg_nbres_ppage);
$image = image_html('images/gauche_on.gif');
$lien = str_replace('{lien}', $image, $lien_on);
$lien = str_replace('{cible}', $cible, $lien);
}
else
{
$image = image_html('images/gauche_off.gif');
$lien = str_replace('{lien}', $image, $lien_off);
}
$barre .= $lien." <B>·</B>";
// pages 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10
// -------------------------------------------------------------------
if ($debut >= ($cfg_nb_pages * $cfg_nbres_ppage))
{
$cpt_fin = ($debut / $cfg_nbres_ppage) + 1;
$cpt_deb = $cpt_fin - $cfg_nb_pages + 1;
}
else
{
$cpt_deb = 1;
$cpt_fin = (int)($nbtotal / $cfg_nbres_ppage);
if (($nbtotal % $cfg_nbres_ppage) != 0) $cpt_fin++;
if ($cpt_fin > $cfg_nb_pages) $cpt_fin = $cfg_nb_pages;
}
for ($cpt = $cpt_deb; $cpt <= $cpt_fin; $cpt++)
{
if ($cpt == ($debut / $cfg_nbres_ppage) + 1)
{
$barre .= "<A CLASS='off'> ".$cpt." </A> ";
}
else
{
$barre .= "<A HREF='".$query.(($cpt-1)*$cfg_nbres_ppage);
$barre .= "'> ".$cpt." </A> ";
}
}
// suivant . >
// --------------------------------------------------------------------
if ($debut + $cfg_nbres_ppage < $nbtotal)
{
$cible = $query.($debut+$cfg_nbres_ppage);
$image = image_html('images/droite_on.gif');
$lien = str_replace('{lien}', $image, $lien_on);
$lien = str_replace('{cible}', $cible, $lien);
}
else
{
$image = image_html('images/droite_off.gif');
$lien = str_replace('{lien}', $image, $lien_off);
}
$barre .= " <B>·</B>".$lien;
// fin . >>
// --------------------------------------------------------------------
$fin = ($nbtotal - ($nbtotal % $cfg_nbres_ppage));
if (($nbtotal % $cfg_nbres_ppage) == 0) $fin = $fin - $cfg_nbres_ppage;
if ($fin != $debut)
{
$cible = $query.$fin;
$image = image_html('images/droite_on.gif');
$lien = str_replace('{lien}', $image.$image, $lien_on);
$lien = str_replace('{cible}', $cible, $lien);
}
else
{
$image = image_html('images/droite_off.gif');
$lien = str_replace('{lien}', $image.$image, $lien_off);
}
$barre .= "<B>·</B> ".$lien;
return($barre);
}
// ------------------------------------------------------------------------
// image_html
// ------------------------------------------------------------------------
function image_html($img, $align = "absmiddle")
{
$taille = @getimagesize($img);
return '<IMG SRC="'.$img.'" '.$taille[3].' BORDER=0 ALIGN="'.$align.'">';
}
// ------------------------------------------------------------------------
// afficher_ligne
// ------------------------------------------------------------------------
function afficher_ligne($cpt, $enr)
{
// alternance des couleurs des lignes de réponses
$couleur = ($cpt % 2)
? '#EEEEEE'
: '#FFFFFF';
echo '<TR BGCOLOR="'.$couleur.'">';
// nb de réponse
echo '<TD ALIGN="right" NOWRAP WIDTH="1%"> <B>'.$cpt.'</B>. </TD>';
// date
echo '<TD ALIGN="left"NOWRAP WIDTH="1%"> ';
echo htmlspecialchars($enr['d']);
echo ' </TD>';
// nom+email
echo '<TD ALIGN="left"NOWRAP WIDTH="1%"> ';
$nom = htmlspecialchars($enr['Nom']);
if ($enr['email'] != "")
{
$mail = str_replace('@', '@', $enr['email']);
echo "<A HREF='mailto:".htmlspecialchars($mail)."'>";
echo $nom;
echo "</A>";
}
else
{
echo $nom;
}
echo ' </TD>';
// Tel
echo '<TD WIDTH="10%"> ';
echo htmlspecialchars($enr['Tel']);
echo ' </TD>';
// message
echo '<TD WIDTH="100%"> ';
echo htmlspecialchars($enr['Message']);
echo ' </TD>';
echo '</TR>';
}
?>
</BODY>
</HTML>