Decode utf-8

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 : Decode utf-8

Re: Decode utf-8

par AB » 09 oct. 2009, 17:51

D'un autre côté tu avais peut-être aussi la solution de changer le charset de ton mail en utf-8 ...
Enfin c'est juste une remarque en passant, j'ai visité ce topic car il n'a pas été signalé résolu.

Re: Decode utf-8

par Abakus007 » 09 oct. 2009, 17:13

Salut,

Merci bien !

Finalement je le fais de cette manière et ca fonctionne très bien .

Php 4.x: $sender_subject = utf8_decode($HTTP_POST_VARS[‘subject’]);
Php 5.x: $sender_subject = utf8_decode($_POST[‘subject’]);

Merci !

Re: Decode utf-8

par Dr@ke » 08 oct. 2009, 11:25

Bonjour,
Une fonction qui pourrait surement t'intéresser:
La fonction iconv() (Convertit une chaîne dans un jeu de caractères):
http://fr2.php.net/manual/fr/function.iconv.php

Sinon il est préférable d'utiliser la variable: $_Post, nouvelle version de: $HTTP_POST_VARS:
http://www.manuelphp.com/php/reserved.v ... s.post.php

Pour le stripslashes, si c'est à cause de magic-quotes-gpc:
http://www.manuelphp.com/php/ini.magic-quotes-gpc.php

Tu peux alors dans ce cas utiliser ma fonction qui est préférable, vue que magic-quotes-gpc devrait être supprimé dès PHP 6.
function verif_magicgpc($string) { 
  if (get_magic_quotes_gpc() === 1) {
      $string = stripslashes($string);
  }
  return $string;
}
$sender_prenom = verif_magicgpc($sender_prenom);
Pour le reste, d'autres te donneront surement des informations complémentaires, si besoin :wink:

Decode utf-8

par Abakus007 » 08 oct. 2009, 04:08

Salut

J'ai un formulaire en flash qui redirige mes variables vers un fichier en php.... Il fonctionne sous php 4, depuis peu j'essais de passer au php 5 et j'ai un trouble de decode utf-8. Je décode le utf-8 parce que j'écris du texte en francais et je renvoie en html en charset=\"iso-8859-1 dans le courriel ex:

Prénom: variable du formulaire

Exemple de ma ligne de code ou je recois le courriel avec la variable (pas decode) parce que je la décode pas mais il y a de quoi dans la variable :........
$prenom = $_POST['prenom'];
Ce que je recois:..........Prénom: Mètres

Exemple de ma ligne de code ou je recois le courriel mais la variable est vide :........
$prenom = utf8_decode($HTTP_POST_VARS['prenom']);
Ce que je recois:..........Prénom: ???? pas de variable (vide)

Par la suite j'enleve l'indésirable;

$sender_prenom = stripslashes($sender_prenom);

Alors quelle est mon erreur dans ma ligne de decode $prenom = utf8_decode($HTTP_POST_VARS['prenom']); ou celle la $sender_prenom = stripslashes($sender_prenom); ?? Mais j'ai essayé sans $sender_prenom = stripslashes($sender_prenom); et ca change rien..

Merci d'avance...