coupure du contenu d'un champ

nanard
Invité n'ayant pas de compte PHPfrance

29 juil. 2005, 19:53

pour afficher dans un tableau le titre ($t) récupérer par SQL, j'ai rédigé le code suivant :
<td width="538" colspan="2" style="border-width:1; border-top-color:rgb(238,238,238); border-right-color:rgb(238,238,238); border-bottom-color:rgb(238,0,0); border-left-color:rgb(238,0,0); border-style:inset;" bgcolor="#AAAAAA" align="center" valign="middle">&nbsp;<? echo "<input type='text' name='title' value='" .htmlspecialchars($t) ."' size='80'>"; ?></td>
    </tr>
or, il est affiché :
E.T. L au lieu de E.T. L ' EXTRATERRESTRE

y a-t-il una astuce, SVP Merci

Mammouth du PHP | 19672 Messages

30 juil. 2005, 10:15

As-tu vérifié directement dans ta base si la valeur attentdue est complète ou également tronquée après l'apostrophe ? Il y a fort à parier que cette dernière possibilité soit vérifiée parce que lors de l'enregistrement, si tu n'as pas ajouté un "addslashes", l'apostrophe a été interprétée par MySQL comme la fin de la chaîne s'il y en avait également une au début, ce qui voudrait dire que tu as envoyé :

Code : Tout sélectionner

INSERT INTO .... VALUES('E.T. L'EXTRATERRESTRE')
Si tu observes bien, il y a une erreur dans cette requête qui aurait dû être:

Code : Tout sélectionner

INSERT INTO .... VALUES('E.T. L\'EXTRATERRESTRE')
Pour l'afficher, il faudrait après récupération la traiter avec "stripslashes".
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

30 juil. 2005, 13:40

et si l'apostrophe y est, comme tu entoures les valeurs de tes attributs par des simples quotes, l'apostrophe de "L'extra-terrestre" correspondan à la fin de la l'attribut

voici le html qui doit être généré :
<input type='text' name='title' value='ET L'EXTRA-TERRESTRE' size='80'>
solution pour ce cas, remplacer les quotes par des guillemets :
<input type="text" name="title" value="ET L'EXTRA-TERRESTRE" size="80">

Eléphant du PHP | 62 Messages

30 juil. 2005, 13:51

et comme on dit chez moi ...
ça marche mais avant l/'apostrophe c/'est la catastrophe... 
[/code]
Je suis chaud je brûle d'en savoir +