vraiment bizzare

WRInaute occasionnel
Dans ma base de données je stock des urls, qui ont l'air toutes clean, mais lorsqu'elles sont ressorties sur une page, il y a des espaces entre certaines lettres et cela rend l'url inaccessible.
J'ai tenté de copier coller une url directement de la base sur mon navigateur, pas de problème j'ai quelque chose de ce genre :
http://monsite.com/lechemin-de-lurl.html
Lorsque je fais appel à cette url sur ma page dynamique du genre "lire la suite" qui a pour cible l'url de la base, il s'avère que le lien redirige sur
http://monsite.com/le chemin-de-lurl.html
ici il ya un espace entre le et chemin qui se forme.
please help !
 
WRInaute accro
Bonjour
Les espaces ne se mettent pas par hasard comme ça; tu dois avoir un traitement foireux des données récupérées dans ta base de données à mon avis.
 
WRInaute occasionnel
ça y est, trouvé, dans le code que j'ai repris il y avait une fonction du genre :
Code:
function cutLongWord($text) {
    
     $limit = 40;
     // On stocke tous les mots dans un tableau
     $tab = explode(' ', $text);
     foreach($tab as $k => $str) {
     // On coupe tous les mots > à $limit
     $tab[$k] = wordwrap($str, $limit, " ", true);
     }
     // On reconstitut la chaine de départ
     $string = implode(' ', $tab);
     return $string;
    }
J'ai augmenté la variable limit, et c'est bon, ça s'affiche normalement.
Merci pour ton intervention nickargall
 
Nouveau WRInaute
Content que tu ais solutionner ton problème.
Par contre je ne sais pas si tes url sont de taille variable (contenant des titres de topic...)
mais dans cette éventualité, voici un le pattern à utiliser pour supprimer les espaces
récurrents dans une chaine. (à moins que tu préfère augmenter la limite à 10000)

Code:
$url = preg_replace ("/\s+/", " ", $url);
 
Discussions similaires
Haut