Page 1 sur 1

Petit problème de copier coller dans un formulaire

Posté : 05 févr. 2008, 17:33
par mastersoft
Bonjour,

Alors voilà je cré actuellement un site internet tout fonctionne bien sauf une chose qui m'échappe :?
Donc dans mon formulaire il y a un textarea et je viens devoir que si je colle quelque chose dedans et que je veux l'enregistrer dans ma base de donnée (MySQL) il ne veut pas. Pourquoi :?:

Merci de toute réponse

Posté : 05 févr. 2008, 17:45
par d0m
il faut activer un attribut de la balise :

Code : Tout sélectionner

<TEXTAREA faineant="ON"></TEXTAREA>
plus sérieusement, au lieu de le mettre en base affiche le contenu via un echo pour vérifier que le contenu est juste la chaine de caractères et qu'il n'y a pas de mise en forme spéciale ou quelque chose du genre là.

Posté : 05 févr. 2008, 17:48
par mastersoft
Merci pour une réponse aussi vite
faineant="ON"
?
J'essais de suite lol
Non je recherche la cause mais le mystère reste entier

"une idée comme ça un tchat pour un gros forums comme celui-ci serai peut etre une bonne idée"

Posté : 05 févr. 2008, 18:12
par AB
Faudrait nous montrer le code que tu utilises

Posté : 05 févr. 2008, 18:16
par mastersoft

Code : Tout sélectionner

<form method="post" action="../index/index.php?menu=publications&admin=non&actu=oui" name="formulaire"> <?php echo"Titre :"; ?><br/> <input type="text" name="publications_titre" size=80 /><br/><br/> <?php echo"Ecrivez votre publication ici :"; ?><br/> <input type="button" id="gras" name="gras" value="Gras" onClick="javascript:bbcode('[gras]', '[/gras]');return(false)" /> <input type="button" id="italic" name="italic" value="Italic" onClick="javascript:bbcode('[italic]', '[/italic]');return(false)" /> <input type="button" id="souligne" name="souligne" value="Souligne" onClick="javascript:bbcode('[souligne]', '[/souligne]');return(false)" /> <input type="button" id="barrer" name="barrer" value="Barrer" onClick="javascript:bbcode('[barrer]', '[/barrer]');return(false)" /> <input type="button" id="image" name="image" value="Image" onClick="javascript:bbcode('[image]', '[/image]');return(false)" /> <input type="button" id="lien" name="lien" value="Lien" onClick="javascript:bbcode('[url=]', '[/url]');return(false)" /><br/> <textarea cols=80 rows=20 id="textarea" name="publications_message"></textarea><br/> <input type="submit" name="submit" value="Envoyer" /> <input type="reset" name="reset" value="Effacer tout" /> <img src="../imagesglobal/blanc.bmp" title="" alt="" onClick="javascript:bbcode('[blanc]','[/blanc]');return(false)" /> <img src="../imagesglobal/bleu.bmp" title="" alt="" onClick="javascript:bbcode('[bleu]','[/bleu]');return(false)" /> <img src="../imagesglobal/vert.bmp" title="" alt="" onClick="javascript:bbcode('[vert]','[/vert]');return(false)" /> <img src="../imagesglobal/vert2.bmp" title="" alt="" onClick="javascript:bbcode('[vert2]','[/vert2]');return(false)" /> <img src="../imagesglobal/rouge.bmp" title="" alt="" onClick="javascript:bbcode('[rouge]','[/rouge]');return(false)" /> <img src="../imagesglobal/violet.bmp" title="" alt="" onClick="javascript:bbcode('[violet]','[/violet]');return(false)" /> <img src="../imagesglobal/orange.bmp" title="" alt="" onClick="javascript:bbcode('[orange]','[/orange]');return(false)" /> <img src="../imagesglobal/jaune.bmp" title="" alt="" onClick="javascript:bbcode('[jaune]','[/jaune]');return(false)" /> <img src="../imagesglobal/attention.png" title="" alt="" onClick="javascript:ins_img('[iattentioni]');return(false)" /> <img src="../imagesglobal/question.png" title="" alt="" onClick="javascript:ins_img('[iquestioni]');return(false)" /> <img src="../imagesglobal/info.png" title="" alt="" onClick="javascript:ins_img('[iinfoi]');return(false)" /> <img src="../imagesglobal/stop.png" title="" alt="" onClick="javascript:ins_img('[istopi]');return(false)" /> </form>

Code : Tout sélectionner

if (!empty($_POST['publications_titre']) AND !empty($_POST['publications_message']) AND isset($_POST['publications_titre']) AND isset($_POST['publications_message'])) { $message = htmlentities ($_POST['publications_message']); $titre = htmlentities ($_POST['publications_titre']); mysql_connect("localhost", "root", ""); mysql_select_db("commune"); $nb_enrg = mysql_query("SELECT count(*) as nb_enrg FROM publications"); $nb_enrg = mysql_fetch_array($nb_enrg); $nb_enrg = $nb_enrg['nb_enrg'] + 1; mysql_query("INSERT INTO publications VALUES('" . $nb_enrg . "', '" . $titre . "', '" . $message . "', '" . time() . "')"); mysql_close(); }
Alors premier c'est le formulaire et le deuxième c'est l'enregistrement alors ne vous fiez pas GET ou POST pour l'enregistrement

C'est bizare il n'y a que le coller qui ne fonctionne pas bien ? Alors que si j'écris le meme texte il s'enregistre

Posté : 05 févr. 2008, 19:04
par Invité
mmm essaie tout de meme addslashes sur le texteare

et regarde au cas ou ici

http://fr3.php.net/magic_quotes

:D

Posté : 05 févr. 2008, 19:22
par AB
C'est bizare il n'y a que le coller qui ne fonctionne pas bien ? Alors que si j'écris le meme texte il s'enregistre
Je sais pas. C'est bizarre. Mais plutôt que
  $message = htmlentities ($_POST['publications_message']);
      $titre = htmlentities ($_POST['publications_titre']); 
essaies
$message = get_magic_quotes_gpc()? stripslashes($_POST['publications_message']) : $_POST['publications_message'];
$titre = get_magic_quotes_gpc()? stripslashes($_POST['publications_titre']) : $_POST['publications_titre'];
//...
$insert = "INSERT INTO publications VALUES('" . $nb_enrg . "', '" .mysql_real_escape_string($titre) . "', '" . mysql_real_escape_string($message) . "', '" . time() . "')";
$query = mysql_query($insert);
      mysql_close();  
Et si ça ne marche pas fait un echo $insert pour voir si ta requête est bien écrite.

Posté : 05 févr. 2008, 21:47
par mastersoft
sa n'a pas l'air de mieux marcher, mais je pense pas que se soit lier au code mais plutot au caractère que je veux copier qui sont peut etre pas réglementaire

merci pour la reponse

Posté : 05 févr. 2008, 22:05
par AB
Même si ça marche pas mieux, c'est la syntaxe recommandée par le manuel php pour faire des requêtes.

A part ça regarde dans les balises de ton entête html, tu devrais avoir quelque chose comme

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Document sans titre</title> ... </head>
Avec cet exemple il faudrait que les champs concernés de ta table soit en latin1_general_ci

Une autre possibilité serait de déclarer tout en UTF8