Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/01/2011, 23h08   #1
Invité de passage
 
Maurice BERNOT
Inscription : janvier 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Maurice BERNOT

Informations forums :
Inscription : janvier 2011
Messages : 5
Points : 0
Points : 0
Par défaut PHP vers Lotus Notes Pb conversion caractères

Bonjour,

J'utilise la fonction mail dans PHP et en voulant inscrire une URL (récupérée dans une base Oracle) dans le corps du message j'ai une conversion non désirée :

la chaîne de caractères =Ec se transforme en ì (i avec accent grave)

La chaîne complète d'origine est :

http://www.toulon.dcn.dga.def/app_et...n=FMECHEANCIER
&docum=Echeancier%20des%20procedures%20d%20entretien.htm

La chaîne affichée en ouvrant le message Lotus est :

http://www.toulon.dcn.dga.def/app_et...n=FMECHEANCIER
&documìheancier%20des%20procedures%20d%20entretien.htm

(Le Ech en cause se trouve en début de troisième ligne après docum)

Extrait du code :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
$adresse_destinataire = odbc_result($rs,"adresse_destinataire");
$objet = odbc_result($rs,"objet");
$header="From: \"$emetteur\"<$adresse_emetteur>\r\n";
$header.="To: $adresse_destinataire\r\n";
$header.="Date: ".date("r")."\r\n";
$header.="Message-ID:<xyzxyz>\r\n";
$header.="MIME-Version: 1.0\r\n";
$header.="Content-Type: multipart/related;boundary=\"CMBP-12345\"\r\n";
 
$msg="--CMBP-12345\r\n";
$msg.="Content-Type: Text/html\r\n";
$msg.="Content-Transfer-Encoding: Quoted-Printable\r\n\r\n";
$msg.="<center><b>$titre</b></center><br><br>\r\n\r\n";
if (($type_mail == "AVIS PROGRAMME" or $type_mail == "AVIS DEMANDE PAR UTILISATEUR") and $lien_document != "" )
{
$msg.=$lien_document;
}
 
if (@mail($adresse_destinataire ,$objet,$msg,$header))
{
echo "message envoyé<br>";
@odbc_exec($link,"delete from rt_envoi_mails where id = $id");
}
Merci d'avance et svp donnez-moi une explication complète car c'est mon premier contact avec PHP (je suis parti d'une page existante).

Cordialement.

RimosTln
RimosTln est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 06h35   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Essai comme ça :
Code :
$msg.= urlencode($lien_document);
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 09h45   #3
Invité de passage
 
Maurice BERNOT
Inscription : janvier 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Maurice BERNOT

Informations forums :
Inscription : janvier 2011
Messages : 5
Points : 0
Points : 0
Merci pour cette proposition.
Il y a bien un effet intéressant sur le résultat et j'obtiens :

http%3A%2F%2Fwww.toulon.dcn.dga.def%2Fapp_etatbo%2Fvisu_lotus.asp%3Fap%3DFM%26rayon%3DFMECHEANCIER%26docum%3DEcheancier%2520des%2520procedures%2520d%2520entretien.htm

Cependant ce n'est pas ce qui m'arrange car j'ai besoin du lien écrit en clair dans le message. De plus, cette conversion n'est pas spécifique aux URL car elle se fait dans une zone de texte toute simple, par exemple dans le titre du message (j'ai fait un essai).

Cordialement
RimosTln est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2011, 09h27   #4
Invité de passage
 
Maurice BERNOT
Inscription : janvier 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Maurice BERNOT

Informations forums :
Inscription : janvier 2011
Messages : 5
Points : 0
Points : 0
Problème résolu. J'ai inséré un "\" après chaque signe "=" dans l'URL avant de la transférer dans le mail Lotus.
RimosTln est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h38.


 
 
 
 
Partenaires

Hébergement Web