? à la place de tout mes accents

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : ? à la place de tout mes accents

par inuendo » 27 janv. 2006, 15:47

En fait, cela dépend du choix de ton encodage mais si tu utilises l'utf-8 ou un autre charset, tu peux le définir lors de la requête pour éviter que MySQL renvoie les données en les encodant avec son système de base. Tu peux donc faire dans ta page qui appelle la connexion à la base :

<?php
  $connection = mysql_connect( "localhost", "root", "" ) OR die( "impossible de se connecter.<br />\nErreur MySQL '" . mysql_error() . "'" );
  mysql_select_db( "db", $connection ) OR die( "Impossible de s&eacute;lectionner la base sp&eacute;cifi&eacute;e.<br />\nErreur MySQL '" . mysql_error() . "'" );
mysql_query("SET NAMES 'utf8'"); //spécifie le charset de ton choix ici
?>
Ainsi cela évitera de devoir faire un htmlentities à chaque echo^^

par newbee » 27 janv. 2006, 14:00

Que dire à part que ça marche...
Merci à tous (et encore merci à Charabia; 2x en 2jours, cool ;) )

par charabia » 27 janv. 2006, 12:37

Un tit exemple simple de l'utilsiation de htmlentities :
<?php
$str = 'Un \'apostrophe\' en <strong>gras</strong>';

// Affiche : Un 'apostrophe' en <strong>gras</strong>
echo htmlentities($str);
?>

par newbee » 27 janv. 2006, 12:27

oki merci.
Mais désolé, je porte bien mon pseudo (ch'suis vraiment un Newb en Php)...
Tu me donner plus d'info sur cette fonction, genre la p'tite ligne de code à inserer pour les convertir dans mes tables? (j'ai regardé dans les docs mais pas tout compris :oops: )

par jobherzt » 27 janv. 2006, 12:11

le meilleur moyen de pas s'embeter avec les encodeage de caracteres, je pense que c'est de transformer tes caracteres accentues avec le code html corespondant é -> &eacute; etc... avec htmlentities.

par newbee » 27 janv. 2006, 09:49

Merci de vos réponses.
Je ne peux envoyer ni l'Url (Intranet), ni le code Html car toutes les données affichées avec les "?" sont extraites de champs à partir de ma Bdd.
Tous mes é,è,à sont en ?.
Je les change en manuel dans ma Bdd et à chaque rappel il me les remets en ?... :(

par Hubert Roksor » 26 janv. 2006, 21:57

En fait ce serait plutôt le contraire... tous les caractères UTF-8 sont légaux en ISO-8859-1, il verrait plutôt des "Ã" en plus que des "?". Le "?" est généralement le signe d'un caractère Unicode illégal ou défectueux... tu devrais poster l'adresse de ta page si elle est accessible de l'extérieur ou alors poste la partie du HTML incriminée.

par Cyrano » 26 janv. 2006, 19:12

essaye en remplaçant iso-8859-1 par utf-8

? à la place de tout mes accents

par newbee » 26 janv. 2006, 18:33

Re-bonjour,
Tout est dans le titre, mais quel est le probleme?
Je sais que ça vient de :

Code : Tout sélectionner

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
mais que mettre à la place?