Tabulations bizarres PHP/MySQL

Résolu
Bonjour à tous,
j'ai un gros problème et je m'arrache les cheveux avec ça depuis pas mal de termps.
Lorsque je récupère des données de ma base de données MySQL en PHP (PDO) pour les afficher sur une page web, je me rend compte que des tabultations sont ajoutées pour je ne sais quelle raison.
Parfois simplement dans du texte, mais encore plus fréquemment dans des textbox.

Y aurait-il une raison connue à ce phénomène ? J'ai cherché dans Google ainsi que dans plusieurs tutos mais pas moyen de trouver une réponse.

Si quelqu'un pouvait m'aider ce serait vraiment sympa

Merci

PS : J'ai cherché voir si ce n'était pas dû à l'encodage. J'ai tout mis en UTF8 mais ça n'a rien changé...



--

Aides-toi et le ciel t'aidera...

2 réponses

  1. 
    function encodeAllChar($text) 
     { 
        return htmlentities($text,ENT_QUOTES,'UTF-8');  
      } 
    
    
    0
    1. Contributeur
      Je viens de faire un test mais ça ne change rien :(
      0
    2. c'est quoi ton code?
      0
    3. Contributeur
      Alors grosso modo (je rassemble plus important)

      Connexion à la DB
      function connectDB() {
      try {
      $dsn = xxx;
      $dbh = new PDO($dsn, 'xxxx', 'xxxxxx', array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));

      }
      catch (PDOException $e)
      {
      $dbh = FALSE;
      }
      return $dbh;
      }

      Après je fais mon select et je récupère un tableau et je mets ma valeur dans une variable :
      $nom = $montab['Nom'];

      Enfin j'affiche la variable dans une textbox qui se trouve dans une table :
      <td><input type="text" name="Nom" id ="Nom" value="
      <?php
      echo htmlentities($nom,ENT_QUOTES,'UTF-8');
      ?>
      " /></td>

      La valeur s'affiche dans la textbox, mais elle est entourée par des tabulations :-/
      0
    4. Contributeur
      OH que j'y pense. Ca n'arrive pas dans Firefox je crois. Du moins pas de cette manière-là (je pense avoir eu le cas dans un affichage de texte simple, toujours dans une table).
      Ici je suis sous IE 7.
      0
  2. c'est ta <table>

    <table style="border-collapse:collapse;" >  
    
    0
    1. Contributeur
      Merci pour ta réponse.
      Je ne pense pas que ce soit ça car les tabulations "en trop" se trouve dans la textox.
      Donc à mon avis ça n'a rien à voir avec la cellule...
      En gros, mon texte est entouré par des tabulations, comme s'il fallait qu'il soit centré dans la textbox (ce qui me semble vraiment bizarre vu que je ne demande ça nulle part).

      Mais ça m'est aussi arrivé dans une autre table et là c'était le contraire, ça arrivait dans les cellules contenants du texte pas PAS dans celles qui contenaient des textbox.

      Vraiment bizarre :-/
      0
    2. montre l'url
      0
    3. Contributeur
      Je t'ai envoyé l'adresse en MP avec un user et un password.
      si tu te connectes avec, tu verras un lien pour modifier les infos persos. Cliques dessus et tu verras ce que je veux dire...
      0
    4. Contributeur
      Bon j'ai fini par trouver.
      En fait, la raison c'est tout simplement que je suis le plus crétin des crétins ^^
      Les tabulations bizarres faisaient partie de mon code (indentation).
      A l'intérieur de mes balises, je codais en PHP pour mettre une valeur par défaut, et au moment de mettre mon code php je passais à la ligne et je tabulais.
      Mais comme ça se passait dans mon input value="", bah HTML a prit mes indentations en compte.

      Bon c'est pas très clair, mais cette solution servira peut-être à quelqu'un de voir (quoique je pense être le seul débile à faire cette erreur là)...

      xamurai, merci beaucoup pour ton aide. Même si tu m'as pas donné la solution, tu m'as mis sur la piste, et j'y serais pas arrivé sinon :o)
      0
    5. ok cool
      0