Page 1 sur 1
étrange caractère dans un lien
Posté : 04 avr. 2011, 11:49
par Invité
Bonjour à tous,
J'ai créé un petit bout de code qui génère des images:
Le pb, c'est que je me retrouve parfois avec un caractère !%20 dans l'url.
Ce qui est bizarre c'est que ce caractère n'est jamais au même endroit dans l'url, et apparaît ou pas, de manière aléatoire.
Avez-vous déjà rencontré ce type de comportement?
Merci pour vos réponses.
Re: étrange caractère dans un lien
Posté : 04 avr. 2011, 12:01
par xTG
%20 représente un espace.
http://localhost/mon lien.html
deviendra dans l'url :
http://localhost/mon%20lien.html
Re: étrange caractère dans un lien
Posté : 04 avr. 2011, 13:10
par Invité
Bonjour,
Merci pour la réponse.
Pour précision, j'envoie les images par email et c'est dans l'email qu'elles semblent poser pb. car quand je les affiches dans une page web, tout semble foncitonner...
c'est dingue mais voici ce qui se passse exactement:
Je crée l'image en dur dans mon code, l'url n'est pas générée dynamiquement, comme ceci:
echo '<img src="' . '
http://www.monsite.fr/images/checkbox.jpg' . '" />';
Dans l'email que je reçois, on trouve <img src="' . 'http://www.monsite.f!%20r/images/checkbox.jpg' . '" />'
ou <img src="' . 'http://www.mon!%20site.fr/images/checkbox.jpg' . '" />'
ce !%20 vient s'incruster sans que je ne puisse comprendre comment et pourquoi, puisque l'url a été créée en dur...
Re: étrange caractère dans un lien
Posté : 04 avr. 2011, 13:33
par xTG
Il n'y a aucune raison d'obtenir un espace en effet.
Pourrait-on voir ton code ?
Re: étrange caractère dans un lien
Posté : 04 avr. 2011, 14:25
par Invité
Voici le code
$elts = $this->getBoxes($v->id);
if ($elts)
{
$addBoxes = '<table border="0" cellpadding="5" cellspacing="0"><tr>';
$jcount = 0;
foreach ($elts as $a => $b)
{
$addBoxes .= '<td width="30%" align="right">'. $b['title'] . '</td>';
$addBoxes .= '<td><img alt="" src="http://www.monsite.fr/@joomla/components/com_eaplug/images/checkbox.jpg' . '" /></td>';
$addBoxes .= ($jcount%3 == 0) ? "</tr><tr>" : '';
$jcount++;
}
$addBoxes .= '</tr></table>';
}
$this->getBoxes($v->id) renvoie le résultat d'une requete sql et fonctionne très bien.
Il n'y a d'ailleurs aucune erreur générée, tout fonctionne bien à part cette image qui est parfois brisée quand il y a !%20 qui s'incruste
Re: étrange caractère dans un lien
Posté : 04 avr. 2011, 14:35
par xTG
Bizarre en effet...
Une fonction qui vient toucher par la suite cette variable $addBoxes ?
PS: un @ dans un nom de dossier n'est pas très bien. Dans l'
URL ce caractère est celui terminant les données d'identification présentes avant le nom du service.
Re: étrange caractère dans un lien
Posté : 04 avr. 2011, 14:45
par Invité
non, aucune autre fonction.
effectivement, le @ devrait être viré de là.
Mais j'affiche une vingtaine d'images avec cette boucle. Est il possible que le @ gêne certaines urls et pas d'autres? car la plupart de mes liens sont correctement affichés.
ce !%20 s'incruste de manière ponctuelle.
Re: étrange caractère dans un lien
Posté : 04 avr. 2011, 18:10
par xTG
Je n'ai franchement aucune idée de où pourrait venir ce truc...
As-tu le même résultat à partir d'un autre serveur ? D'un autre ordinateur ?
Re: étrange caractère dans un lien
Posté : 05 avr. 2011, 08:56
par macgawel
Bonjour.
1. Tu pourrais donner le html généré complet (celui que tu reçois, pas celui que tu envoies) ?
2. Ca arrive de temps en temps ou tout le temps ? A des endroits aléatoires ? Quel que soit le client mail ?
Idée con :
Tu as essayé en mettant un retour à la ligne après chaque cellule ?
Ca pourrait être un truc du genre la ligne est trop grande, et elle se retrouve "coupée" à un moment. A la reconstruction il y a un caractère parasite en plus...