Tout ce qui vient après le à n'est pas affiché!

Résolu/Fermé
arabii Messages postés 20 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 1 juillet 2014 - Modifié par arabii le 29/03/2014 à 05:05
Catalunya's Son Messages postés 57 Date d'inscription jeudi 5 septembre 2013 Statut Membre Dernière intervention 17 avril 2015 - 31 mars 2014 à 20:12
bonjour

quand j'envoie un message vers ma base de données tout ce qui vient après les voyelles avec

accents n'est pas affiché y compris les voyelles elles meme

aide svp

merci

4 réponses

Catalunya's Son Messages postés 57 Date d'inscription jeudi 5 septembre 2013 Statut Membre Dernière intervention 17 avril 2015 1
Modifié par Catalunya's Son le 29/03/2014 à 22:11
salut @arabii :)

si vous utilise le
textarea
tu doit faire comme ça:

$message = mysql_real_escape_string(htmlentities($_POST['message']));

cette phase permet d'ajouter les lettres originales du texte
0
arabii Messages postés 20 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 1 juillet 2014
30 mars 2014 à 04:17
merci pour ta reponse catalunya's son

sa marche pas

le formulaire dit que les champs sont vides !
0
Catalunya's Son Messages postés 57 Date d'inscription jeudi 5 septembre 2013 Statut Membre Dernière intervention 17 avril 2015 1
30 mars 2014 à 14:21
alors donne moi le code :)
0
arabii Messages postés 20 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 1 juillet 2014
Modifié par arabii le 30/03/2014 à 15:46
if(isset($_POST['auteur'])) $auteur=$_POST['auteur'];
else $auteur="";

if(isset($_POST['message'])) $message=$_POST['message'];
else $message="";

// On vérifie si les champs sont vides
if(empty($auteur) OR empty($message))
{
echo '<div style="background-color:red;color:white;font-weight:bold;"><font size=2> Tous les champs sont obligatoires !</font></div>';
}

// Aucun champ n'est vide, on peut enregistrer dans la table
else
{
// connexion à la base
$db = mysql_connect('hôte', 'user', 'password') or die('Erreur de connexion '.mysql_error());
// sélection de la base

mysql_select_db('bdd',$db) or die('Erreur de selection '.mysql_error());

// on écrit la requête sql
$sql = "INSERT INTO table (id,,auteur,message) VALUES('','$auteur','$message')";

// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

// on affiche le résultat pour le visiteur
echo ' Votre message a bien été envoyé ' ;

mysql_close(); // on ferme la connexion
}
?>
0
Catalunya's Son Messages postés 57 Date d'inscription jeudi 5 septembre 2013 Statut Membre Dernière intervention 17 avril 2015 1
Modifié par Catalunya's Son le 30/03/2014 à 16:18
merci de rependre, mais votre démarche est très ancient. il faut utilisé le javascript pour tester est ce que les champs vides ou non:


<script type="text/javascript" src="fichier_jquery.js"></script>

$(document).ready(function(){
     $('#bouton').click(function(){
      var auteur = $('#auteur').val();
      var message = $('#message').val();
      if(auteur=='' || message=='')
{
      alert('un ou les 2 champs sont vide');

      //return false pour annuler l'envoi du bouton submit
      return false;
}
});
});



=====================
dans le code php utiliser les fonction suivantes:



éviter l'utilisation de :
if(isset)

$auteur = mysql_real_escape_string(htmlentities($_POST['auteur']));
$message= mysql_real_escape_string(htmlentities($_POST['message']));
0
arabii Messages postés 20 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 1 juillet 2014
31 mars 2014 à 01:21
salut

j'ai enlevé if isset et j'ai mis ton code

alors le meme probleme il considere que les champs sont vides

merci
0
mpmp93 Messages postés 6652 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
31 mars 2014 à 13:42
Bonjour,

Votre code doit être structuré correctement:

au lieu de :

if(isset($_POST['auteur'])) $auteur=$_POST['auteur'];
else $auteur="";


faire:

$auteur = "";
if (isset($_POST['auteur'])) {
    $auteur=$_POST['auteur'];
}


Pour voir ce qui ne va pas, en début de script faire:

print_r($_POST);


A+
0
arabii Messages postés 20 Date d'inscription jeudi 27 mars 2014 Statut Membre Dernière intervention 1 juillet 2014
31 mars 2014 à 19:42
salut

je pense pas que ça soit ça le probleme parce que les message sont bien envoyés à

la base puis bien affichés sur le site sauf le text qui vient après les voyelles avec

accents

j'ai changé l'encodage de la table à utf_general_ci et les pages php en utf8 mais en

vain

tjrs le meme probleme

merci
0
Catalunya's Son Messages postés 57 Date d'inscription jeudi 5 septembre 2013 Statut Membre Dernière intervention 17 avril 2015 1
31 mars 2014 à 20:12
s'il y a une possibilité, poster le formulaire et la page d'insertion au base pour connaitre le problème. merci :)
0