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

Résolu
arabii Messages postés 21 Date d'inscription   Statut Membre Dernière intervention   -  
Catalunya's Son Messages postés 67 Statut Membre -
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

  1. Catalunya's Son Messages postés 67 Statut Membre 1
     
    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
  2. arabii Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
     
    merci pour ta reponse catalunya's son

    sa marche pas

    le formulaire dit que les champs sont vides !
    0
    1. Catalunya's Son Messages postés 67 Statut Membre 1
       
      alors donne moi le code :)
      0
  3. arabii Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
     
    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
    1. Catalunya's Son Messages postés 67 Statut Membre 1
       
      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
    2. arabii Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
       
      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
    3. mpmp93 Messages postés 2931 Date d'inscription   Statut Membre Dernière intervention   1 343
       
      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
  4. arabii Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
     
    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
    1. Catalunya's Son Messages postés 67 Statut Membre 1
       
      s'il y a une possibilité, poster le formulaire et la page d'insertion au base pour connaitre le problème. merci :)
      0